Объявление <!DOCTYPE> в HTML
Объявление <!DOCTYPE> — это первая строка кода в документе HTML или XHTML. Оно указывает версию HTML, используемую в документе. Каждый документ HTML должен начинаться с этого объявления, чтобы браузеры отображали страницу в режиме стандартов (Standards Mode), а не в режиме совместимости (Quirks Mode), что обеспечивает соответствие веб-стандартам. В HTML 4.01 это объявление ссылается на Определение типа документа (DTD), которое указывает структуру и допустимые элементы документа XML.
Объявление <!DOCTYPE> указывается перед тегом <html>. Объявление не чувствительно к регистру.
Синтаксис
Устаревший синтаксис DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "https://www.w3.org/TR/html4/strict.dtd">Параметры <!DOCTYPE>
Корневой элемент — родительский элемент, содержащий все остальные элементы. Для HTML это тег <html>.
Публичность — указывает, является ли DTD PUBLIC или SYSTEM. Для HTML/XHTML значение равно PUBLIC.
Регистрация — исторически указывала статус регистрации в ISO (+ или -). Для DTD W3C это обычно опускается.
Организация — имя разработчика DTD. Для HTML/XHTML это W3C.
Тип — тип документа. Для HTML/XHTML значение равно DTD.
Имя — уникальный идентификатор, описывающий DTD.
Язык — язык документа (две заглавные буквы). Для HTML/XHTML это обычно EN.
URL — URL описания типа документа (например, https://www.w3.org/TR/html4/strict.dtd).
Типы объявления <!DOCTYPE> для HTML
Современные документы HTML используют одно упрощённое объявление. В устаревшем HTML 4.01 существовало три типа:
HTML5
<!DOCTYPE html>Strict — содержит все элементы и атрибуты HTML. Однако презентационные или устаревшие элементы не включаются.
<!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 — аналогичен Transitional, но позволяет использовать фреймы.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "https://www.w3.org/TR/html4/frameset.dtd">Пример объявления HTML <!DOCTYPE>:
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
</head>
<body>
<h2>Elements example</h2>
<p>This is some paragraph.</p>
<p>This is another paragraph <br /> with line break.</p>
</body>
</html>Результат

Типы объявления <!DOCTYPE> для XHTML
Здесь вы можете найти типы объявления <!DOCTYPE> для XHTML.
XHTML 1.0 Strict
Этот DTD включает все элементы и атрибуты HTML, за исключением презентационных или устаревших элементов. Этот DTD не допускает использование фреймов.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">XHTML 1.0 Transitional
Этот DTD включает все элементы и атрибуты HTML, а также презентационные и устаревшие элементы. Фреймкеты не допускаются.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">XHTML 1.0 Frameset
Этот DTD аналогичен XHTML 1.0 Transitional, но фреймкеты допускаются.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">XHTML 1.1
Этот DTD аналогичен XHTML 1.0 Strict, но позволяет добавлять модули (например, для поддержки руби-аннотаций в восточноазиатских языках).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">Практика
Какие из следующих утверждений об объявлении HTML DOCTYPE являются верными?