Skip to main content

Использование элемента DOCTYPE в режиме Quirks

CSS для начинающих. Стандартный режим работы браузера и строгий доктайп. (Июнь 2026)

CSS для начинающих. Стандартный режим работы браузера и строгий доктайп. (Июнь 2026)
Anonim

Если вы разрабатываете веб-страницы более нескольких месяцев, вам, скорее всего, известно о сложности написания страницы, которая выглядит одинаково во всех браузерах. На самом деле это невозможно. Многие браузеры были написаны со специальными функциями, которые только они могли обработать. Или у них есть специальные способы обработки вещей, которые отличаются от того, как их обрабатывают другие браузеры. Например:

  • Слои были созданы для использования в браузерах Netscape. Они не работают ни в одном другом браузере, и фактически устарели в Netscape 6.x +.
  • Внутренние кадры изначально были созданы только для Internet Explorer и с тех пор стали частью спецификации HTML.
  • Internet Explorer 6.0 добавляет дополнительное пространство (например,) окружающих тегов, если только вы не пишете содержимое div на одной (длинной) строке. (IE 6 имеет гораздо больше причуд, а также этот).
  • Netscpe 4.7 не отображает таблицы, которые не написаны в правильном HTML - вместо этого отображается пустая страница. Это было исправлено в Netscape 6.

Проблема для разработчиков браузеров заключается в том, что они должны создавать веб-браузеры, которые обратно совместимы с веб-страницами, созданными для старых браузеров. Чтобы решить эту проблему, разработчики браузеров создали режимы работы браузеров. Эти режимы определяются наличием или отсутствием элемента DOCTYPE и тем, что DOCTYPE звонки.

DOCTYPE

Я подробно расскажу в своей статье DOCTYPEСписок, но вот некоторые общие правила:

  1. Всегда сначала выбирайте режим стандартов. И текущий стандарт, который вы должны использовать, - это HTML5: если у вас нет конкретной причины, чтобы избежать использования HTML5 DOCTYPE, это то, что вы должны использовать.
  2. Перейдите к строгому HTML 4.01, если вам необходимо проверить устаревшие элементы или вы хотите избежать новых возможностей по какой-либо причине:
  3. Если вы нарезали изображения в таблице и не хотите их исправлять, перейдите в Transitional HTML 4.01:
  4. Не записывайте страницы в режиме quirks. Всегда используйте DOCTYPE, Это сэкономит вам время на разработку в будущем и не принесет никакой пользы. IE6 быстро теряет популярность и, проектируя для этого браузера (который по сути является тем, что проектирует в режиме quirks), вы ограничиваете себя, своих читателей и ваши страницы. Если вы должны написать для IE 6 или 7, используйте условные комментарии для их поддержки, а не заставляя современные браузеры работать в режиме quirks.

Зачем использовать DOCTYPE

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

Версии браузера и режим Quirks

DOCTYPEAndroidХромFire FoxIE 8+IOSOpera 7.5+СафариIE 6IE 7Опера 7Netscape 6
НиктоРежим QuirksРежим QuirksРежим Quirks
HTML 3.2
Режим QuirksРежим QuirksРежим Quirks
HTML 4.01
переходныйРежим стандартов *Режим стандартов *Режим стандартов
переходныйРежим QuirksРежим QuirksРежим Quirks
строгийРежим стандартовРежим стандартов *Режим стандартов
строгийРежим стандартовРежим стандартов *Режим стандартов
HTML5
Режим стандартовРежим стандартов *Режим Quirks
* С этим DOCTYPE браузеры близки к стандартам, совместимым, но имеют некоторые проблемы - обязательно проверьте. Это также называется «почти стандартным режимом».