HTML5 doctype переводит IE9 в режим причуд?


101

Я пытаюсь заставить IE9 загрузить мою страницу со стандартами IE9 ...

Я заметил, что <!DOCTYPE HTML>перевел эту чертову штуку в режим причуд ... Что в значительной степени ломает все на странице ...

Как заставить IE придерживаться стандартов IE9?


1
@EricLaw - А? Я не слежу за ...
Abhishek

Какой URL-адрес вашей страницы воспроизводит эту проблему.
EricLaw

Это внутренняя страница тестирования, которую я использую ... Но nvm, @David_Wick уже ответил на вопрос ... :-)
Абхишек

Ответы:


134

Размещение:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

в <head>теге должно это делать.


1
Ага, это помогло ... Не могли бы вы мне немного объяснить это?
Abhishek

8
@Abhishek: метаэлементы не обязательно должны быть явно закрыты в HTML5 (и исторически против более старых спецификаций HTML закрытие было бы фактически недействительным).
reisio

4
@reisio - Если вы посмотрите историю, вы увидите, что он изначально не использовал закрывающую скобку ( >).
Shauna

Это должен быть первый или единственный метатег? Потому что он там и по умолчанию работает в режиме причуд.
DeadlyChambers

2
Я обнаружил, что размещение этого метатега сразу после тега <head> будет работать, в то время как размещение его в нижней части <head> может не сработать, вероятно, из-за вмешательства другого содержимого.
Паоло Миони

63

Убедитесь, что у вас нет комментариев HTML перед объявлением DOCTYPE, иначе IE9 будет использовать режим quirks.

Просто иметь <!DOCTYPE html>в самом верху страницы и ничего не предшествовать этому должно быть достаточно, чтобы IE9 использовал стандартный режим. Вам также не понадобится метатег.


1
@frumbert: за исключением того, что у case есть комментарии перед объявлением doctype, поэтому нет.
reisio

за исключением того, что они не рассматриваются как html-комментарии, они являются условными комментариями, которые IE (любой) не интерпретирует как часть dom, тогда как html-комментарии (те, в которых нет квадратных скобок) обрабатываются как dom и, следовательно, за пробелами. Зависит от случая, версии ie и используемого документа.
frumbert

2
Нет, это не так, сказал Зуаллауз, комментарии, и в ваших примерах есть комментарии (независимо от того, являются ли они стандартным HTML или нет, или интерпретируются как желательно только IE или нет, не имеет значения).
reisio


4

Удалите все неподдерживаемые комментарии, проверьте наличие поддерживаемых комментариев. И разместите в своей голове тег. Объявление типа документа должно быть в самой первой строке вашего HTML.


0

У меня в голове упоминается на всех страницах. Однако он просто отображается правильно для домашней страницы, для всех остальных страниц страница по-прежнему отображается в разбросанном режиме.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.