Режим браузера IE8 и режим стандартов - PullRequest
15 голосов
/ 12 ноября 2009

Мне нужно заставить IE8 отображаться следующим образом:

  1. Режим браузера: Internet Explorer 8

  2. Режим документа: стандарты IE8

Я добавил этот тег, однако он влияет только на режим документа, но не на режим браузера. Как переопределить режим браузера, чтобы страница всегда отображалась в режиме браузера IE8?

<meta http-equiv="X-UA-Compatible" content="IE=8" />

Ответы [ 6 ]

12 голосов
/ 12 ноября 2009

Просто дайте HTML-странице право doctype. Э.Г.

<!doctype html>

Для объяснения и обзора всех типов документов см. http://hsivonen.iki.fi/doctype/. Вам не обязательно нужны эти (неприятные) мета-заголовки.

2 голосов
/ 12 ноября 2009

Насколько я понимаю, опубликованный вами метаэлемент говорит браузеру использовать режим IE8.

Использование строгого типа документа, например <!DOCTYPE html> или <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> сообщит браузеру о необходимости рендеринга в стандартном режиме.

Комбинация из двух визуализирует страницу в режиме стандартов IE8.

1 голос
/ 14 ноября 2012

Проблема заключается в исторической битве между разработчиками и Microsoft и ужасно плохой линейкой продуктов SharePoint. Вот некоторая история http://www.siolon.com/blog/ie-8-compatibility-mode-and-sharepoint/. (не мой сайт). По сути, IE по умолчанию отображает все веб-страницы интрасети в режиме совместимости, в результате чего все сайты интрасети не лучше IE7. Вероятно, они сделали это, потому что SharePoint не соответствует веб-стандартам, и MS хотела, чтобы их продукт хорошо работал на сайтах корпоративной интрасети, где Sharepoint уже укоренился. У меня огромная проблема с этой проблемой на сайте SharePoint, над которым я сейчас работаю. Sharepoint использует тег SharePoint: CssLink для динамической загрузки файлов CSS в зависимости от браузера. Таким образом, хотя наш сайт разработан для IE9, на страницу отправляется таблица стилей IE7.css, поскольку браузер сообщает о себе как браузер IE7. Единственное решение в моей оценке - не использовать IE или дизайн с учетом IE или использовать SharePoint. Если MS вынуждена использовать веб-стандарты только для получения трафика на своих платформах, мы можем изменить их.

1 голос
/ 03 декабря 2010

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

Это верно, я читаю документацию Microsoft, см. Ниже:

Важная деталь для запоминания этот режим браузера выбран до IE запрашивает веб-контент. Это означает, что сайты не могут выбрать режим браузера. Вместо этого разработчики сайта выбирают Режим документа для своего сайта, который переопределяет настройки IE по умолчанию и объявляет как отображается веб-сайт.

Но по некоторым причинам мои функции не работают должным образом, если браузер находится в режиме просмотра в формате IE-8. Даже я правильно установил режим документа на стандарты IE8.

1 голос
/ 17 сентября 2010

Это невозможно, поскольку режим браузера определяется до отправки запроса.

0 голосов
/ 09 июля 2013

Если вам просто нужно изменить способ отображения локально, вы можете использовать Инструменты разработчика. Нажмите F12 (или выберите «Инструменты разработчика» в меню «Инструменты»). Там будет пункт меню как для «Режим браузера», так и для «Режим документа». Изменение является динамичным, и я верю, что оно останется на всю жизнь сессии.

...