Saat menulis doctype HTML5 apa metode yang benar?
<!DOCTYPE html>
atau
<!doctype html>
<!doctype html>
Saat menulis doctype HTML5 apa metode yang benar?
<!DOCTYPE html>
atau
<!doctype html>
<!doctype html>
Jawaban:
Dalam HTML, DOCTYPE tidak sensitif huruf. DOCTYPEs berikut semuanya valid:
<!doctype html>
<!DOCTYPE html>
<!DOCTYPE HTML>
<!DoCtYpE hTmL>
Dalam serialisasi XML (yaitu XHTML), DOCTYPE tidak diperlukan, tetapi jika Anda menggunakannya, DOCTYPE
harus huruf besar:
<!DOCTYPE html>
Lihat serialisasi XML dari HTML5, alias 'XHTML5' :
Perhatikan bahwa jika Anda tidak menggunakan huruf besar
DOCTYPE
dalam dokumen XHTML, parser XML akan mengembalikan kesalahan sintaksis.Bagian kedua dapat ditulis dalam huruf kecil (
html
), huruf besar (HTML
) atau bahkan huruf besar campuran (hTmL
) - masih akan berfungsi. Namun, untuk mematuhi Pedoman Markup Polyglot untuk Dokumen XHTML yang Kompatibel dengan HTML , harus ditulis dalam huruf kecil.
<title/foo/
akan setara dengan <title>foo</title>
. Hanya beberapa validator HTML yang menggunakan SGML. Spesifikasi HTML5 adalah yang pertama mengklarifikasi ini: whatwg.org/specs/web-apps/current-work/multipage/…
html
). Inilah kalimat lengkapnya: “Bagian kedua dapat ditulis dalam huruf kecil ( html
), huruf besar ( HTML
) atau bahkan huruf besar campuran ( hTmL
) - masih akan berfungsi. Namun, agar sesuai dengan Pedoman Markup Polyglot untuk Dokumen XHTML yang Kompatibel dengan HTML, harus ditulis dalam huruf kecil. "
Jika ada yang masih bertanya-tanya di tahun 2014, silakan berkonsultasi ini:
HTML5
DOCTYPE harus terdiri dari komponen berikut, dalam urutan ini:
1. A string that is an ASCII case-insensitive match for the string "<!DOCTYPE".
...
Catatan: meskipun ditampilkan dalam semua batas, spesifikasi menyatakan tidak sensitif
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.
Melihat spesifikasi XML, ia mencantumkan DOCTYPE dalam huruf besar, tetapi saya tidak dapat menemukan apa pun yang menyatakan bahwa 'semua huruf besar' diperlukan (untuk perbandingan, dalam spesifikasi HTML5 yang tercantum di atas, ditampilkan dalam contoh di semua huruf besar, tetapi spec secara eksplisit menyatakan bahwa case- insensitive ).
Markup Poliglot
Terkadang berharga untuk dapat menyajikan dokumen HTML5 yang juga merupakan dokumen XML yang baik.
Markup Polyglot menggunakan deklarasi tipe dokumen (DOCTYPE) yang ditentukan oleh bagian 8.1.1 dari [HTML5]. Selain itu, DOCTYPE sesuai dengan aturan berikut:
* The string DOCTYPE is in uppercase letters.
Jadi, perhatikan bahwa Ployglot Markup menggunakan doctype HTML5 biasa, tetapi dengan penambahan / perubahan. Untuk diskusi kami, terutama DOCTYPE dinyatakan dalam semua huruf besar .
Penjumlahan
[Pendapat] Saya tidak akan terlalu khawatir tentang pemenuhan kepatuhan XML kecuali Anda secara khusus mencoba membuat pertimbangan untuk itu. Untuk sebagian besar pengembangan server berbasis klien dan JS, JSON telah menggantikan XML.
Oleh karena itu, saya hanya dapat melihat ini benar-benar berlaku jika Anda mencoba untuk memperbarui sistem warisan berbasis xhtml / xml yang sudah ada untuk hidup berdampingan dengan fungsionalitas HTML5 yang baru. Jika demikian, lihat spesifikasi marka polyglot.
Menurut spesifikasi terbaru , Anda harus menggunakan sesuatu yang cocok dengan huruf besar-kecil <!DOCTYPE html>
. Jadi, sementara browser diperlukan untuk mendukung kasus apa pun yang Anda inginkan, masuk akal untuk menyimpulkan dari ini bahwa ini <!DOCTYPE html>
adalah kasus kanonik.
<!DOCTYPE html>
, oleh karena itu akan masuk akal untuk menyimpulkan bahwa pembuat spec memiliki sedikit preferensi untuk kapitalisasi tertentu. Saya akan menggunakan huruf besar yang sama dengan spec, karena ini bagus untuk hal-hal ini konsisten, tetapi jika Anda lebih suka <!dOcTyPe
maka menjadi tamu saya :)
Baik huruf besar atau kecil adalah "benar". Namun jika Anda menggunakan font web dan peduli tentang IE7, saya akan merekomendasikan menggunakan<!DOCTYPE html>
karena bug di IE7 di mana font web terkadang gagal jika menggunakan <!doctype html>
(misalnya dalam jawaban ini ).
Inilah sebabnya mengapa saya selalu menggunakan huruf besar pada doctype.
Standar untuk HTML5 adalah tag tidak peka huruf besar-kecil.
http://www.w3schools.com/html5/tag_doctype.asp
Lebih Teknis: ( http://www.w3.org/TR/html5/syntax.html )
DOCTYPE harus terdiri dari komponen berikut, dalam urutan ini:
<!DOCTYPE
.tag_doctype.asp
tidak valid (404) dan pertanyaan ini tentang doctype
deklarasi, yang bukan tag ... Pokoknya, kesimpulannya benar: di HTML5, kata kunci doctype
dapat dalam huruf besar, kecil atau campuran.
Semacam pertanyaan menyiratkan hanya ada satu jawaban yang benar, menyediakan dua pilihan ganda, dan meminta kami untuk memilih satu. Saya akan menyarankan itu untuk HTML5 baik <!DOCTYPE html>
dan <!doctype html>
valid.
Jadi browser berkemampuan HTML5 akan menerima yang huruf kecil dan memproses html dengan benar.
Browser sebelumnya dan tidak menyadari HTML5, saya pernah mendengar, bahkan tanpa DOCTYPE, akan berusaha untuk memproses html sebaik mungkin. Dan jika mereka tidak mengenali doctype huruf kecil akan melakukan hal yang sama. Jadi tidak ada gunanya membuatnya menjadi huruf besar karena browser tersebut tidak akan dapat sepenuhnya mengimplementasikan deklarasi HTML5.
Deklarasi doctype tidak peka huruf besar kecil, dan string ASCII apa pun yang cocok