!DOCTYPE
Оновлено: 26.04.2023
<!DOCTYPE> (від англ. document type - тип документа) призначений для вказівки типу поточного документа - DTD (document type definition, опис типу документа). Це необхідно, щоб браузер розумів, як слід інтерпретувати поточну вебсторінку, оскільки HTML існує в кількох версіях, крім того, є XHTML (EXtensible HyperText Markup Language, розширена мова розмітки гіпертексту), схожий на HTML, але відмінний від синтаксису. Щоб браузер «не плутався» і розумів, за яким стандартом відображати вебсторінку, необхідно в першому рядку коду задавати <!DOCTYPE>.
Існує кілька видів <!DOCTYPE>, вони відрізняється залежно від версії мови, на яку вони орієнтовані. У табл. 1. наведено основні типи документів зі їх описом.
Табл. 1. Допустимі DTD
DOCTYPE | Опис |
---|---|
HTML 4.01 | |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/str..."> | Суворий синтаксис HTML. |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loo..."> | Перехідний синтаксис HTML. |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/fra..."> | У HTML-документі застосовуються фрейми. |
HTML 5 | |
<!DOCTYPE html> | Для всіх документів. |
XHTML 1.0 | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DT..."> | Суворий синтаксис XHTML. |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DT..."> | Перехідний синтаксис XHTML. |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DT..."> | Документ написано на XHTML, і він містить фрейми. |
XHTML 1.1 | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/D..."> | Розробники XHTML 1.1 припускали, що він поступово витіснить HTML. Ніякого розподілу на види це визначення не має, синтаксис один і підпорядковується чітким правилам. |
Синтаксис
<!DOCTYPE [Елемент верхнього рівня] [Публічність] "[Реєстрація]//[Організація]//[Тип] [Им'я]//[Мова]" "[URL]">
Закриваючий тег
Не потрібен.
Атрибути
елемент верхнього рівня | вказує елемент верхнього рівня в документі, для HTML це тег <html>. |
публічність | об'єкт є публічним (значення PUBLIC) або системним ресурсом (значення SYSTEM), наприклад, таким, як локальний файл. Для HTML/XHTML вказується значення PUBLIC. |
реєстрація | повідомляє, що розробник DTD зареєстрований у міжнародній організації зі стандартизації (International Organization for Standardization, ISO). Приймає одне з двох значень: плюс (+) - розробник зареєстрований ISO і - (мінус) - розробник не зареєстрований. Для W3C значення ставиться "-". |
організація | унікальна назва організації, що розробила DTD. Офіційно HTML/XHTML публікує W3C, ця назва пишеться в <!DOCTYPE>. |
тип | тип документа, що описується. Для HTML/XHTML значення вказується DTD. |
ім'я | унікальне ім'я документа для опису DTD. |
мова | мова, якою написаний текст для опису об'єкта. Містить дві літери, пишеться у верхньому регістрі. Для документа HTML/XHTML вказується англійська (EN) |
URL | адреса документа з DTD. |
Приклад
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>!DOCTYPE</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p>Page content.</p>
</body>
</html>
Примітка
Internet Explorer до версії 6.0 вимагає, щоб <!DOCTYPE> стояв обов'язково у першому рядку коду. Інакше браузер переходить у режим сумісності (quirk mode).
Хоча значення URL не є обов'язковим, деякі браузери за його відсутності можуть перейти в режим сумісності, тому HTML4 вказуйте повний шлях до DTD-файлу, як показано в табл. 1.
Специфікація
Специфікація | Статус |
---|---|
WHATWG HTML Living Standard | Живий стандарт |
HTML5 | Рекомендація |
HTML 4.01 Specification | Рекомендація |