<!DOCTYPE>

Тип HTML

Описание

<!DOCTYPE>  Используется для описания типа текущего документа — DTD (document type definition, описание типа документа). Тег DOCTYPE сообщает валидатору, какая версия HTML используется на странице. Этот тег должен находится в первой строчке страницы. 

Если вы будете пользоваться неполным тегом DOCTYPE, устаревшим его видом, или вообще забудете про него, браузер перейдет в (quirk mode) режим совместимости. Браузер будет считать, что страница написана для старых версий браузеров. В этом режиме браузер будет отображать веб-страницы, как они отображались в старых версиях браузера. Для разных браузеров веб-страницы могут выглядеть по разному, в зависимости от используемого браузера. 

Всегда используйте тег <!DOCTYPE> в веб-страницах, для правильного отображения браузером содержимого страницы.

Допустимые DTD

DOCTYPE Описание
HTML 4.01
<!DOCTYPE HTML PUBLIC  "-//W3C//DTD HTML 4.01//EN" "www.w3.org/TR/html4/strict.dtd"> Строгий синтаксис HTML.
<!DOCTYPE HTML PUBLIC  "-//W3C//DTD HTML 4.01 Transitional//EN" "www.w3.org/TR/html4/loose.dtd"> Переходный синтаксис HTML.
<!DOCTYPE HTML PUBLIC  "-//W3C//DTD HTML 4.01 Frameset//EN" "www.w3.org/TR/html4/frameset.dtd"> В HTML-документе применяются фреймы.
HTML 5
<!DOCTYPE html> Для всех документов HTML 5
XHTML 1.0
<!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Strict//EN" "www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Строгий синтаксис XHTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> Переходный синтаксис XHTML.
<!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Frameset//EN" "www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> Документ написан на XHTML и содержит фреймы.
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> Разработчики 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.

Спецификация

версия HTML 3.2 HTML 4.01 HTML 5.0 XHTML 1.0 XHTML 1.1
поддержка да да да да да

Поддержка браузерами

браузер IE Chrome Opera Firefox Safari
версия 6.0+ 1.0+ 7.0+ 1.0+ 1.0+
поддержка да да да да да

Пример

<!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>Решение о выборе, какой режим отображения требуется вызвать,
         было найдено в использовании «DOCTYPE» переключения.
         Согласно стандартам, любой HTML или XHTML документ должен иметь DOCTYPE который указывает,
         какой тип HTML документа он использует.</p>
 </body> 
</html>
<!DOCTYPE html>
<html>
 <head>
   <title>!DOCTYPE</title>
   <meta charset="utf-8">
 </head>
 <body>
 <p>Решение о выборе, какой режим отображения требуется вызвать,
         было найдено в использовании «DOCTYPE» переключения.
         Согласно стандартам, любой HTML или XHTML документ должен иметь DOCTYPE который указывает,
         какой тип HTML документа он использует.</p>
 </body> 
</html>