Тип документа HTML5 был специально выбран, потому что это была самая короткая возможная строка типа документа, которая запускала режим стандартов во всех браузерах (начиная с IE6).Это было преднамеренное решение, основанное на том, что будет работать в браузерах, которые уже используются.
Другими словами, если вы укажете <!doctype html>
, IE6 должен перейти в стандартный режим, а не в режим причуд.
Причина, по которой это работает, в том, что IE6 (и другие) на самом деле довольно снисходительны к доктайпу;они делают предположение, что если там есть какой-то тип документа, разработчик, вероятно, намеревался перейти в стандартный режим.Если они не распознают его, они предполагают, что либо разработчик сделал опечатку, либо был изобретен новый тип документа, которого не было, когда браузер был выпущен;в любом случае, браузер пытается извлечь из него выгоду и работать в стандартном режиме.Команда HTML5 обнаружила, что html
была самой короткой возможной строкой типа документа, которая вызвала такое поведение, поэтому она использовалась в качестве типа документа HTML5.
Что, конечно, делает тип документа HTML5 запускать старые браузеры, такие как IE6, чтобы фактически поддерживать любую из новых функций HTML5.Это на самом деле очевидно.Такие продукты, как Modernizr и HTML5Shiv могут помочь с этим, но только до определенной степени.