Декларация <!DOCTYPE> определяет версию HTML, которая используется в данном документе. Объявление версии является обязательным условием, так как браузер должен понимать, как интерпретировать страницу. В случае, если декларация отсутствует, браузер может некорректно отображать содержимое веб-страницы.
Декларация <!DOCTYPE> указывается до <html> тега. Декларация не чувствительна к регистру.
Синтаксис <!DOCTYPE>
[Элемент верхнего уровня] [Публичность] "[Регистрация]//[Организация]//[Тип] [Имя]//[Язык]" "[URL]">
Параметры <!DOCTYPE>
Элемент верхнего уровня — корневой контейнер документа, куда помещается все содержимое документа. Для 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 — ссылка на описание типа документа (например, https://www.w3.org/TR/html4/loose.dtd ).
Типы деклараций <!DOCTYPE>
Различают три типа деклараций <!DOCTYPE>:
Строгий (Strict): не содержит «устаревшие» и «не одобряемые» (deprecated) элементы.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "https://www.w3.org/TR/html4/strict.dtd">
Переходный (Transitional): содержит все элементы и атрибуты, включая устаревшие и не рекомендованные теги (для совместимости и перехода с более старых версий HTML). Использование фреймов запрещено.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">
С фреймами (Frameset): такой же как переходный, но при этом разрешает использование тегов для создания фреймов.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "https://www.w3.org/TR/html4/frameset.dtd">
Для HTML 5 используется один вариант декларации.
<!DOCTYPE html>
Пример
<!DOCTYPE html>
<html>
<head>
<title>Декларация !DOCTYPE</title>
</head>
<body>
<p>Параграф</p>
</body>
</html>
Результат
Поддержка браузера
✓ | ✓ | ✓ | ✓ | ✓ |