Что такое Doctype

Любой документ HTML должен начинаться с декларации типа документа, сокращенно Doctype, которая сообщает браузеру версию HTML, используемую на странице.

Любой HTML-документ должен начинаться с символаОбъявление типа документа(сокращенноdoctype) в первой строке, которая сообщает браузеру версию HTML, используемую на странице.

Это объявление типа документа (без учета регистра):

<!DOCTYPE html>

сообщает браузеру, что этоДокумент HTML5.

Режим рендеринга браузера

С помощью этого объявления браузер может отображать документ встандартный режим.

Без него браузеры отображают страницу врежим причуд.

Если вы никогда не слышали о режиме причуд, вы должны знать, что браузеры представили этот режим рендеринга, чтобы страницы, написанные в «старом стиле», были совместимы с новыми функциональными возможностями и используемыми стандартами. Без него, по мере развития браузеров и HTML, старые страницы будут портить свой внешний вид, и веб-платформа исторически очень защищала в этом отношении (что, я думаю, является частью ее успеха).

Браузеры по умолчанию используют режим причуд, если они не распознают, что страница написана для стандартного режима.

Вы хотите стандартный режим, и

<!DOCTYPE html>

способ получить это.

Пользователям Internet Explorer <= 10 следует уделить особое внимание, чтобы избежать режима причуд, и нужно поставить

<meta http-equiv="X-UA-Compatible" content="IE=Edge">

на странице<head>перед загрузкой любого скрипта.

Старые версии HTML

У HTML есть странный набор версий:

  • HTML (1991)
  • HTML 2.0 (1995)
  • HTML 3.2 (1997)
  • HTML 4.01 (1999)
  • XHTML (2000)
  • HTML5 (2014 г.)

Тип документа HTML 4.01 Strict:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">

XHTML был похож:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Им требовалось DTD (Определение типа документа), потому что эти старые версии HTML были основаны на SGML, формате, определяющем структуру документа.

XHTML также требовалhtmlтег, чтобы иметь пространство имен, например:

<html xmlns="http://www.w3.org/1999/xhtml">

Эти объявления doctype всегда требовали, чтобы вы где-то сохраняли объявление DTD, так как его почти невозможно запомнить. Кроме того, были разные DTD для строгого режима или переходного режима (который был менее строгим).

XHTML - это словарь XML, а HTML4 (и ниже) - это приложение SGML. Текущий HTML, HTML5, в значительной степени вдохновлен HTML4, но не является приложением SGML и отказался от многих строгих правил XHTML.

HTML5 основан не на SGML, а на собственном стандарте, поэтому DTD не требуется, и мы извлекаем выгоду из этого очень простого объявления:

<!DOCTYPE html>

Скачать мою бесплатнуюРуководство для начинающих по JavaScript


Больше руководств по браузеру: