Internet Explorer 8 EmulateIE7 Режим не работает - PullRequest
4 голосов
/ 11 июня 2009

Я настроил IIS6 для отправки следующих заголовков

Имя пользовательского заголовка : совместимо с X-UA
Значение пользовательского заголовка : IE = EmulateIE7

, что должно заставить IE 8 перейти в режим совместимости IE 7. Вы можете прочитать больше об этом на MSDN .

Я заметил, просматривая панель инструментов разработчика, что, если у меня определено DTD, режим документа корректно устанавливается на IE 7, но режим браузера - IE 8. Если на странице нет DTD, режим документа получает снова установите Quirks и режим браузера IE 8.

Я делаю что-то не так. Как заставить IE 8 установить режим браузера IE 7.

Спасибо

Ответы [ 7 ]

6 голосов
/ 11 июня 2009

Я использовал этот метатег для включения режима IE7:

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

Важно: вы должны поставить это перед любыми другими тегами в <head>!

(на самом деле вы могли бы поставить <title> до этого, но не помните ничего проще, чем конкретные случаи)

4 голосов
/ 23 июня 2009

Режим браузера относится к заголовку пользовательского агента, отправляемому браузером. Поскольку UA уже был отправлен до того, как возвращается HTTP-ответ, содержащий вашу директиву EmulateIE7, слишком поздно менять режим браузера; изменен только режим документа.

См. http://msdn.microsoft.com/en-us/library/dd565628(VS.85).aspx#bdmodes

1 голос
/ 02 сентября 2009

Проверьте эту ссылку

http://ilia.ws/archives/196-IE8-X-UA-Compatible-Rant.html

Необходимо добавить пользовательский заголовок, как описано в ссылке. Все еще ищете решение без заголовка при использовании переходного DTD.

0 голосов
/ 20 октября 2011
    <!-- Use IE7 mode added on 13th October for IE8 BSCI-->
           <!--  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> -->
    <!-- Use IE7 mode added on 20th October for IE8 BSCI-->
            <meta http-equiv="X-UA-Compatible" content="IE=IE7" /> <!--- This appears to work on testing! -->    
            <!-- END -->   

Использование «Эмуляции» не сработало, но IE = IE7 сработало

0 голосов
/ 04 ноября 2010

Если вы слишком внимательно следовали этому руководству, вы упустите тот факт, что способ исправить это с помощью web.config поддерживается только в IIS 7+.

Через ссылку на статью [MSDN] в OP

Настройка веб-серверов для указания Режимы совместимости по умолчанию

Администраторы сайта могут настроить их сайты по умолчанию для конкретного режим совместимости документов определение пользовательского заголовка для сайта. Конкретный процесс зависит от вашего Веб сервер. Например, следующее Файл web.config включает Microsoft Информационные службы Интернета (IIS) для определить пользовательский заголовок, который автоматически отображает все страницы в IE7 режим.

НО см .: Статья IIS.NET

IIS 7.0  The <customHeaders> element of the <httpProtocol> element was introduced in IIS 7.0.
0 голосов
/ 09 сентября 2009

нашел это решение ... надеюсь, оно работает!

Примечание. Перед отправкой любого html-кода в браузер вам нужно будет поместить строку заголовка

Это код PHP, строка должна быть такой:

заголовок ('X-UA-совместимый: IE = 7');

0 голосов
/ 11 июня 2009

Я думаю, что это работает, как задумано. Я использовал это значение заголовка без проблем.

У вас есть проблемы с рендерингом на ваших страницах? Вместо этого вы можете попробовать использовать IE = IE7.

...