Режимы браузеров
Во время противостояния браузеров Internet Explorer и Netscape каждый из разработчиков старался улучшить своё детище, чтобы усилить позиции программы на рынке и привлечь больше пользователей. Netscape 4 и IE4 ужасно поддерживали веб-стандарты, поэтому следующая версия, IE5 должна была не только исправить ошибки IE4, но и показать улучшенную поддержку спецификации CSS. Это было необходимо еще и по политическим мотивам, поскольку компания Microsoft вошла в группу W3C и начала оказывать сильное влияние на разработку HTML и CSS.
В процессе работы над браузером IE5 его разработчики столкнулись с неожиданной трудностью. Разница при отображении страницы в разных версиях браузера была настолько велика, что множество сайтов оказались бы неработоспособными при просмотре в IE5. Идея сделать кнопку для переключения в режим совместимости пришла только в версии 8.0, поэтому разработчики IE5 пошли другим путём. Все старые страницы отображались по старым правилам, а для включения режима поддержки стандартов в код страницы необходимо добавить элемент <!DOCTYPE> (доктайп).
Браузер IE5 под Mac стал первым браузером, у которого появилось два режима отображения страниц — режим совместимости и стандартный режим. Идея понравилась и быстро распространилась среди разработчиков других браузеров, так что подобные режимы вскоре появились в Mozilla, Safari и Opera. IE5 под Windows, а также старые браузеры вроде Netscape 4 используют только режим совместимости.
Режим браузера для просмотра конкретной веб-страницы устанавливается через элемент <!DOCTYPE>, который является обязательным согласно спецификации HTML и XHTML. Сложности возникают из-за того, что по сути доктайп не один, а различается дополнительными параметрами, влияющими в итоге на режим отображения страницы.