HTML5 belgesini yazarken doğru yöntem nedir?
<!DOCTYPE html>
veya
<!doctype html>
<!doctype html>
HTML5 belgesini yazarken doğru yöntem nedir?
<!DOCTYPE html>
veya
<!doctype html>
<!doctype html>
Yanıtlar:
HTML'de DOCTYPE büyük / küçük harfe duyarsızdır. Aşağıdaki DOCTYPE'lerin tümü geçerlidir:
<!doctype html>
<!DOCTYPE html>
<!DOCTYPE HTML>
<!DoCtYpE hTmL>
XML serileştirmelerinde (yani XHTML) DOCTYPE gerekli değildir, ancak kullanırsanız DOCTYPE
büyük harf olmalıdır:
<!DOCTYPE html>
Bkz . HTML5'in XML serileştirmesi, yani 'XHTML5' :
DOCTYPE
Bir XHTML belgesinde büyük harf kullanmazsanız , XML ayrıştırıcısının bir sözdizimi hatası döndüreceğini unutmayın.İkinci bölüm küçük harf (
html
), büyük harf (HTML
) veya hatta karışık harf ( ) olarak yazılabilirhTmL
- yine de çalışır. Ancak, HTML Uyumlu XHTML Belgeleri için Polyglot İşaretleme Yönergelerine uymak için küçük harfle yazılmalıdır.
<title/foo/
eşdeğer olurdu <title>foo</title>
. Yalnızca birkaç HTML doğrulayıcısı SGML kullanır. HTML5 özelliği bunu açıklayan ilk özelliktir
html
) öğesinin ikinci kısmı hakkındadır . Tam cümle şöyledir: “İkinci bölüm küçük harf ( html
), büyük harf ( HTML
) veya hatta karışık harf ( ) olarak yazılabilir hTmL
- yine de çalışır. Ancak HTML Uyumlu XHTML Belgeleri için Polyglot İşaretleme Yönergelerine uymak için küçük harfle yazılması gerekir. ”
2014'te hala merak eden biri varsa, lütfen buna danışın:
HTML5
Bir DOCTYPE bu sırayla aşağıdaki bileşenlerden oluşmalıdır:
1. A string that is an ASCII case-insensitive match for the string "<!DOCTYPE".
...
Not: Tüm büyük harflerde gösterilmesine rağmen, özellik duyarsız olduğunu belirtiyor
XHTML5
This specification does not define any syntax-level requirements
beyond those defined for XML proper.
XML documents may contain a DOCTYPE if desired, but this is not required
to conform to this specification. This specification does not define
a public or system identifier, nor provide a formal DTD.
XML spesifikasyonuna bakarak, DOCTYPE'yi kapaklar halinde listeler, ancak 'tüm büyük harflerin' gerekli olduğunu belirten hiçbir şey bulamıyorum (karşılaştırma için, yukarıda listelenen HTML5 spesifikasyonunda, tüm büyük harflerde örnekte görüntülenir, ancak spesifikasyon bunun büyük / küçük harfe duyarlı olmadığını açıkça belirtir ).
Polyglot İşaretlemesi
W3 Polyglot İşaretlemesi - Giriş
Bazen iyi biçimlendirilmiş XML belgeleri olan HTML5 belgelerini sunabilmek de değerlidir.
W3 Polyglot İşaretlemesi - Doküman
Polyglot işaretlemesi, [HTML5] bölüm 8.1.1'de belirtilen bir belge türü bildirimi (DOCTYPE) kullanır. Ayrıca, DOCTYPE aşağıdaki kurallara uygundur:
* The string DOCTYPE is in uppercase letters.
Bu nedenle, Ployglot İşaretlemesinin normal bir HTML5 dokümanı kullandığını, ancak eklemelerin / değişikliklerin olduğunu unutmayın. Tartışmamız için, en önemlisi DOCTYPE'ın tüm başlıklarda beyan edildiği .
toplam
W3'ün HTML ve XHTML bölümünü görüntüleme
[Görüş] Özellikle üzerinde durmaya çalışmadıkça XML uyumluluğunu tatmin etme konusunda fazla endişelenmem. Çoğu istemci ve JS tabanlı sunucu geliştirme için JSON, XML'in yerini almıştır.
Bu nedenle, bunu yalnızca, mevcut, xhtml / xml tabanlı eski bir sistemi yeni HTML5 işlevselliğiyle bir arada varolacak şekilde güncellemeye çalışıyorsanız görebilirsiniz. Bu durumda, polyglot biçimlendirme spesifikasyonuna bakın.
Göre son spec , sizin için bir harf duyarsız eşleşme şey kullanmalıdır <!DOCTYPE html>
. Bu nedenle, tarayıcıların tercih ettiğiniz durumu desteklemesi gerekirken <!DOCTYPE html>
, kanonik durumdan çıkarım yapmak mantıklıdır .
<!DOCTYPE html>
, bu nedenle spesifikasyonun yazarının söz konusu büyük harf kullanımı için küçük bir tercihi olduğu sonucunu çıkarmak mantıklı olacaktır. Spesifikasyonla aynı büyük harf kullanımını kullanacağım, çünkü bu şeylerin tutarlı olması güzel, ama isterseniz <!dOcTyPe
benim misafirim :)
Ya büyük ya da küçük harf "doğru". Ancak, web yazı tiplerini kullanırsanız ve IE7'yi önemsiyorsanız <!DOCTYPE html>
, IE7'deki web yazı tiplerinin bazen başarısız olduğu durumlarda <!doctype html>
(örneğin bu cevapta ) hata yapmasını öneririm .
Bu yüzden her zaman doktrin üzerinde büyük harf kullanıyorum.
HTML5 için standart, etiketlerin büyük / küçük harfe duyarlı olmamasıdır.
http://www.w3schools.com/html5/tag_doctype.asp
Daha Teknik Olarak: ( http://www.w3.org/TR/html5/syntax.html )
Bir DOCTYPE bu sırayla aşağıdaki bileşenlerden oluşmalıdır:
<!DOCTYPE
.tag_doctype.asp
geçersiz (404) ve bu soru doctype
etiket olmayan bildirimle ilgili ... Her neyse, sonuç doğrudur: HTML5'te, anahtar kelime doctype
büyük, küçük veya karışık durumda olabilir.
Buradaki soru, tek bir doğru cevabın var olduğunu ima ediyor, çoktan ikisini seçiyor ve bizden bir tane seçmemizi istiyor. Ben HTML5 için hem öneririm <!DOCTYPE html>
ve <!doctype html>
geçerlidir.
Dolayısıyla, HTML5 özellikli bir tarayıcı küçük olanı kabul eder ve html'yi düzgün şekilde işler.
HTML5'ten önceki ve habersiz tarayıcılar, bir dokümanı olmadan bile, html'yi ellerinden geldiğince işlemeye çalışacağını duydum. Ve küçük harfli doktrin tanımazlarsa aynı şeyi yaparlar. Dolayısıyla, bu tarayıcılar hiçbir şekilde HTML5 bildirimlerini tam olarak uygulayamayacağından, büyük harf yapmanın bir anlamı yoktur.
Doküman bildirimi büyük / küçük harfe duyarlı değildir ve eşleşen herhangi bir ASCII dizesi