Dalam HTML (termasuk XHTML) seperti yang digunakan pada halaman web, DOCTYPE adalah string yang memicu salah satu dari beberapa mode browser (mode quirks, mode standar, mode hampir standar), tergantung pada ejaan yang tepat dari DOCTYPE. Anda ingin menggunakannya untuk memilih mode browser yang paling sesuai dengan halaman Anda.
Secara formal, dalam SGML dan XML, deklarasi DOCTYPE adalah referensi ke Document Type Definition (DTD), yang menentukan aturan sintaksis formal dari bahasa markup. Tidak ada browser yang pernah menggunakan DTD untuk apa pun atau bahkan mengaksesnya. Namun, mereka digunakan oleh validator markup SGML dan XML seperti W3C Markup Validator , kecuali dalam mode HTML5. Oleh karena itu, pilihan DOCTYPE menentukan cara kerja validator jika dokumen diserahkan kepadanya. Namun, mode operasi validator juga dapat dipilih dalam antarmuka penggunanya. (Prosesor SGML dan XML dapat menggunakan DOCTYPE dengan cara lain yang berbeda juga, tetapi pertanyaannya tampaknya dibatasi pada konteks HTML dan untuk browser web dan perangkat lunak yang terkait erat.)
Tidak ada daftar DOCTYPE yang resmi. Setiap spesifikasi atau konsep HTML menentukan DOCTYPE sendiri, atau DOCTYPE. Himpunan DOCTYPE yang dikenali oleh browser saat memilih mode bervariasi menurut browser. Dalam praktiknya, tidak ada alasan untuk menggunakan DOCTYPE selain <DOCTYPE html>
sebagaimana didefinisikan dalam HTML5 , meskipun HTML5 juga mencantumkan beberapa "DOCTYPE lawas". Anda dapat menggunakan DOCTYPE itu jika Anda menginginkan mode standar (disarankan untuk halaman baru) dan tidak menggunakan DOCTYPE jika Anda menginginkan mode quirks (yang mungkin Anda perlukan untuk halaman lawas).
"Mode standar" umumnya berarti mode operasi di mana browser mengikuti HTML, CSS, DOM, dan spesifikasi lainnya sebaik mungkin. Itu biasanya tidak berarti kepatuhan penuh. "Mode quirks" berbeda di browser yang berbeda, tetapi umumnya itu berarti upaya meniru perilaku browser yang sangat lama seperti IE 5. Tujuannya adalah untuk menjaga halaman lama tetap berfungsi, dengan asumsi bahwa mereka dapat mengandalkan fitur dan bug di browser lama. Lihat deskripsi Apa yang terjadi dalam Mode Quirks? Perhatikan bahwa ada konsep "quirks mode" yang agak berbeda dan lebih terbatas dalam HTML5, yang sangat mirip dengan dokumen yang disebut Quirks Mode Living Standard .
Masalah khas adalah bahwa lebar elemen dihitung secara berbeda dalam mode kebiasaan dan dalam mode standar. Ini berarti bahwa tata letak halaman mungkin lebih atau kurang berubah atau bahkan benar-benar kacau, jika halaman yang dirancang untuk bekerja dalam mode quirks dilihat dalam mode standar (atau sebaliknya).
Jadi Anda harus menggunakan <!DOCTYPE html>
halaman baru dan menyimpan DOCTYPE apa pun (jika ada) yang telah Anda gunakan untuk halaman lama.
Namun, mode quirks berarti, di beberapa browser, banyak fitur baru CSS yang tidak didukung. Ini berarti bahwa jika Anda ingin meningkatkan halaman lama dengan beberapa fitur CSS3, mungkin perlu untuk beralih ke DOCTYPE yang memicu mode standar. Dalam kasus seperti itu, Anda perlu meninjau dan menguji halaman untuk melihat apakah itu akan berjalan dalam mode standar.