Кнопка просмотра совместимости IE8 включена, даже когда IE = EmulateIE7 - PullRequest
4 голосов
/ 22 мая 2009

Для нашего веб-приложения мы отправляем X-UA-Compatible -> IE = EmulateIE7 для всех страниц. Однако кнопка просмотра совместимости рядом с кнопкой «Обновить» по-прежнему отображается.

1) Это ожидаемое поведение? 2) Разве заголовок HTTP не должен заставить браузер отображаться в режиме IE7 (с включенными Quirks + IE7Standards), а затем теперь отображать кнопку просмотра в режиме совместимости?

Если сайт не готов к использованию IE8, существует ли способ принудительной эмуляции IE7 и, таким образом, отключение этой кнопки?

Ответы [ 2 ]

14 голосов
/ 22 мая 2009

Согласно Только факты: обзор совместимости Просмотр вы объявили [ваш сайт] «готовым» для Internet Explorer 8 с помощью тега управления версиями . Кнопка просмотра совместимости не должна отображаться:

Владельцы сайтов всегда контролируют их содержимое. По умолчанию Internet Explorer использует переключение DOCTYPE для определения режима Quirks v. Standards (опять же, режим Standards сопоставляется с IE8 Standards by дефолт). Владельцы сайтов могут использовать тег X-UA-Compatible для полной декларации о том, как они хотели бы, чтобы их сайт отображался, и для отображения страниц в режиме стандартов на стандарты IE7. Использование тега X-UA-Compatible переопределяет представление совместимости на клиенте.

Иногда кнопка просмотра в режиме совместимости не отображается. Кнопка расположена в адресной строке рядом с кнопками «Стоп» и «Обновить». В нескольких случаях пользователь не предпринимает никаких действий и, следовательно, кнопка «Просмотр в режиме совместимости» не будет отображаться:

  • Если вы просматриваете внутреннюю страницу в Internet Explorer (например, о: InPrivate)
  • Если вы просматриваете страницу, которая объявила, что она «готова» для Internet Explorer 8 с помощью тега контроля версий / заголовка HTTP (не имеет значения, вызывает ли этот тег Quirks, стандарты IE7 или стандарты IE8, кнопка не будет отображаться)
  • Если вы просматриваете страницу интрасети, и у вас установлен флажок «Отображать сайты интрасети в режиме совместимости»
  • Если вы просматриваете какую-либо веб-страницу и у вас установлен флажок «Показать все веб-сайты в режиме совместимости»
  • Если вы просматриваете веб-страницу, которая включена в поставляемый Microsoft список обновлений совместимости, и у вас установлен флажок «Включить обновленные списки веб-сайтов из Microsoft»
  • Если вы переключили настройки «Режим документа» или «Режим браузера» с помощью панели инструментов разработчика

Если вы используете заголовок HTTP, использовали ли вы Fiddler , чтобы убедиться, что заголовок X-UA-Compatible действительно доставляется на каждую страницу?

Если вы используете тег META, то в соответствии с тегами META и блокировкой в ​​будущей совместимости :

X-UA-совместимый заголовок не чувствителен к регистру; однако он должен появляться в заголовке веб-страницы (раздел HEAD) перед всеми остальными элементами, кроме элемента TITLE и других элементов META.

И, наконец, действительно ли IE8 в режиме совместимости, когда появляется кнопка? Если это так, возможно, ваш сайт находится в списке совместимости IE8 от Microsoft или в конфигурации локального клиента:

  • Tools> Compatibility View Settings
  • Убедитесь, что вашего сайта нет в списке Сайты, которые вы добавили в режиме совместимости
  • Попробуйте снять Включить обновленные списки веб-сайтов от Microsoft и перезапустить браузер
0 голосов
/ 30 января 2010

У меня была проблема на нашем сайте спецодежды, из-за которой нам первоначально пришлось использовать Meta EmulateIE7 для преодоления проблем с CSS, когда IE8 был впервые выпущен. Позже мы исправили проблему и добавили метатег X-UA-совместимый IE = 8

Что мы заметили, так это то, что даже при очистке кэша браузеров IE8 все еще сохранял состояние кнопки совместимости, установленной пользователем. Нам было важно преодолеть это, потому что это вызывало проблемы со сценариями при работе в режиме совместимости.

Мы решили проблему, добавив в заголовок всех страниц IE-8, совместимый с X-UA, и добавив его в IIS в качестве заголовка HTTP. Кнопка совместимости больше не отображается в браузерах посетителей =)

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...