Если вы разрабатываете веб-страницы более нескольких месяцев, вам, скорее всего, известно о сложности написания страницы, которая выглядит одинаково во всех браузерах. На самом деле это невозможно. Многие браузеры были написаны со специальными функциями, которые только они могли обработать. Или у них есть специальные способы обработки вещей, которые отличаются от того, как их обрабатывают другие браузеры. Например:
- Слои были созданы для использования в браузерах Netscape. Они не работают ни в одном другом браузере, и фактически устарели в Netscape 6.x +.
- Внутренние кадры изначально были созданы только для Internet Explorer и с тех пор стали частью спецификации HTML.
- Internet Explorer 6.0 добавляет дополнительное пространство (например,) окружающих тегов, если только вы не пишете содержимое div на одной (длинной) строке. (IE 6 имеет гораздо больше причуд, а также этот).
- Netscpe 4.7 не отображает таблицы, которые не написаны в правильном HTML - вместо этого отображается пустая страница. Это было исправлено в Netscape 6.
Проблема для разработчиков браузеров заключается в том, что они должны создавать веб-браузеры, которые обратно совместимы с веб-страницами, созданными для старых браузеров. Чтобы решить эту проблему, разработчики браузеров создали режимы работы браузеров. Эти режимы определяются наличием или отсутствием элемента DOCTYPE и тем, что DOCTYPE звонки.
DOCTYPE
Я подробно расскажу в своей статье DOCTYPEСписок, но вот некоторые общие правила:
- Всегда сначала выбирайте режим стандартов. И текущий стандарт, который вы должны использовать, - это HTML5: если у вас нет конкретной причины, чтобы избежать использования HTML5
DOCTYPE, это то, что вы должны использовать. - Перейдите к строгому HTML 4.01, если вам необходимо проверить устаревшие элементы или вы хотите избежать новых возможностей по какой-либо причине:
- Если вы нарезали изображения в таблице и не хотите их исправлять, перейдите в Transitional HTML 4.01:
- Не записывайте страницы в режиме quirks. Всегда используйте
DOCTYPE, Это сэкономит вам время на разработку в будущем и не принесет никакой пользы. IE6 быстро теряет популярность и, проектируя для этого браузера (который по сути является тем, что проектирует в режиме quirks), вы ограничиваете себя, своих читателей и ваши страницы. Если вы должны написать для IE 6 или 7, используйте условные комментарии для их поддержки, а не заставляя современные браузеры работать в режиме quirks.
Зачем использовать DOCTYPE
Как только вы узнаете об этом типе DOCTYPE переключение происходит, вы можете напрямую влиять на свои веб-страницы, используя DOCTYPE это указывает, что браузер может ожидать от вашей страницы. Кроме того, как только вы начнете использовать DOCTYPE, вы будете писать HTML, который ближе к действию (вы все равно должны его проверить). И, написав действительный XHTML, вы поощряете разработчиков браузеров создавать стандарты, совместимые с браузерами.
Версии браузера и режим Quirks
DOCTYPE | AndroidХромFire FoxIE 8+IOSOpera 7.5+Сафари | IE 6IE 7Опера 7 | Netscape 6 |
|---|---|---|---|
| Никто | Режим Quirks | Режим Quirks | Режим Quirks |
| HTML 3.2 | |||
| Режим Quirks | Режим Quirks | Режим Quirks | |
| HTML 4.01 | |||
| переходный | Режим стандартов * | Режим стандартов * | Режим стандартов |
| переходный | Режим Quirks | Режим Quirks | Режим Quirks |
| строгий | Режим стандартов | Режим стандартов * | Режим стандартов |
| строгий | Режим стандартов | Режим стандартов * | Режим стандартов |
| HTML5 | |||
| Режим стандартов | Режим стандартов * | Режим Quirks | |
| * С этим DOCTYPE браузеры близки к стандартам, совместимым, но имеют некоторые проблемы - обязательно проверьте. Это также называется «почти стандартным режимом». |




