Microsoft отменила это решение; IE8 теперь будет выбирать режим, соответствующий стандартам, по умолчанию.
Крис Уилсон подтвердил сегодня в IEBlog, что для отображения сайта в режиме соответствия стандартам в IE8 необходимо включить определенный метатег:
- «Режим причуд» остается тем же, и [останется] совместимым с текущим контентом.
- «Стандартный режим» остается тем же, что и IE7, и [останется] совместимым с текущим контентом.
- Если вы (разработчик страницы) действительно хотите наилучшую поддержку стандартов, которую может предоставить IE8, вы можете получить ее, вставив простой
meta
Метатег, также задокументированный Аароном Густафсоном в последнем выпуске A List Apart (с тщательным обоснованием и поддержкой), выглядит следующим образом:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
Хотя я допускаю, что для сохранения обратной совместимости с сайтами вчерашнего (и пятилетней давности), выбор отображения страницы в стандартном режиме в IE8 кажется единственным разумным вариантом, одна вещь действительно раздражает меня в этом подходе :
Жесткое кодирование ссылки на определенный браузер в качестве необходимой части разметки страницы кажется грязным.
Однозначно указать кодировку символов или язык, используемый страницей, но агент, с которым она совместима? Фундаментально и философски просто имеет смысл, чтобы страница была полностью независимой от браузера. Фактически, упоминание о браузере на странице может быть истолковано как ненормальная форма рекламы, в то время как другие браузеры платят штраф за то, что лучше придерживаются спецификаций W3C. Будут ли другие браузеры следовать этому примеру, чтобы веб-разработчики сочли необходимым написать что-то подобное?
<meta http-equiv="X-UA-Compatible" content="IE=8;FF=3;Opera=9;Konqueror=3;Safari=3..." />
Тем не менее, я думаю, что это лучше, чем использование условных комментариев.