Режимы отображения веб-страниц Standards и Quirks - в чем разница?

Веб-браузеры используют два основных режима отображения страниц: Standards (стандартный) и Quirks (эмуляция старых браузеров). Это влияет на то, как обрабатывается CSS, JavaScript и верстка страницы.

Что такое режим Standards?

Режим Standards (также называемый "стандартным режимом" или "полной стандартной поддержкой") — это состояние, при котором браузер пытается строго следовать спецификациям W3C. В этом режиме:

ℹ️ Интересный факт: современные браузеры по умолчанию используют режим Standards, если страница начинается с

Что такое режим Quirks?

Режим Quirks ("режим совместимости") эмулирует поведение старых браузеров (преимущественно Internet Explorer 5) и отличается следующими особенностями:

  1. Нестандартная обработка CSS box model (размеры элементов рассчитываются некорректно)
  2. Более "терпимое" отношение к ошибкам в HTML и CSS
  3. Унаследованная обработка определенных свойств и атрибутов
  4. Необычные расчеты размера шрифта и других мерных единиц

Этот режим сохраняется в браузерах для обеспечения обратной совместимости со старыми веб-сайтами, разработанными под устаревшие стандарты.

Ключевые различия между режимами

Основные различия проявляются в следующих аспектах:

Как браузер выбирает режим?

Браузер определяет режим отображения по следующим признакам:

  1. Наличие doctype: Полный DOCTYPE переводит браузер в режим Standards
  2. Некорректный или устаревший DOCTYPE: Может вызвать переход в Quirks mode
  3. Отсутствие DOCTYPE: безусловный переход в Quirks mode
  4. XML-декларация: В некоторых случаях также влияет на выбор режима

🔍 Для проверки текущего режима страницы в JavaScript можно использовать document.compatMode. Значение "CSS1Compat" означает Standards mode, а "BackCompat" — Quirks mode.

Практические советы разработчикам

#standards#quirks#верстка