Как отключить представление о совместимости в IE
Вопрос
Мне интересно, как вы останавливаете людей, которые используют IE 8 от перехода в режим совместимости?
<meta http-equiv="X-UA-Compatible" content="IE=8" />
Я нашел этот тег, и я думаю, что это заставляет людей оставаться в режиме IE-8, но я не слишком уверен и не могу проверить, как у меня есть IE 9.
Если люди находятся в режиме IE 9, я заставляю их не перейти в IE 8 или IE 7 режим совместимости?
Я попытался поместить вышеупомянутую строку в свой код и перенес в IE 9 -> Инструменты -> Просмотр совместимости (серого цвета)
Но «Настройки представления совместимости» не были срывались, и, похоже, вы могли бы добавить сайт там.
Так должно ли это отключить?
Решение
<meta http-equiv="X-UA-Compatible" content="IE=8" />
Следует заставить вашу страницу отображать в стандартах IE8. Пользователь может добавить сайт в список совместимости, но этот тег будет иметь приоритет.
Быстрый способ проверить - загрузить страницу и ввести следующую адресную строку:
javascript:alert(navigator.userAgent)
Если вы видите IE7 в строке, он загружается в режиме совместимости, в противном случае нет.
Другие советы
Все, что вам нужно, это заставить отключить CM в IE - просто вставьте этот код (в IE9 и под CM будут отключены):
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" />
Источник: http://twigstechtips.blogspot.com/2010/03/css-ie8-meta-tag-to-disable.html
Этого должно быть достаточно, чтобы заставить IE
Пользователь, чтобы сбросить режим совместимости в любом IE
версия:
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
Тем не менее, есть несколько предостережений, о которых нужно знать:
- Мета тега выше должна быть включена как самый первый тег под
<head>
. Анкет Только<title>
Тег может быть размещен над ним.
Если вы этого не сделаете, вы получите ошибку на IE9
Dev Tools: X-UA-Compatible META tag ignored because document mode is already finalized.
Если вы хотите, чтобы эта разметка проверила, убедитесь, что вы не забыли закрыть
meta
тег с/>
вместо просто>
.Начиная с
IE11
, режим Edge - это режим предпочтительного документа. Чтобы поддержать/включить это, используйте объявление типа документа HTML5<!doctype html>
.Если вам нужно поддерживать веб -сайты на
IE7
, убедитесь, что вы используете<!DOCTYPE html>
. Анкет Я протестировал это и обнаружил, что рендеринг веб -регистрации наIE7
стал довольно ненадежным при использовании<!doctype html>
.
Использование Google Chrome Frame является популярным, но, к сожалению, его будут отброшены где -то в этом месяце, январь 2014 года.
<meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1">
Обширная связанная информация здесь. Анкет Совет при использовании его в качестве первого метага находится на ранее упомянутом источнике здесь, который был обновлен.
Если вы используете ASP.NET MVC, я нашел Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1")
в кодовом блоке в _layout, чтобы работать довольно хорошо:
@Code
Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1")
End Code
<!DOCTYPE html>
everything else
Ответ, данный Феликсфеттом, работал на меня. Повторить:
<meta http-equiv="X-UA-Compatible" content="IE=11; IE=10; IE=9; IE=8; IE=7; IE=EDGE" />
У меня есть это как первый тег «Мета» в моем коде. Я добавил 10 и 11, так как это версии, которые теперь опубликованы для Internet Explorer.
Я бы просто прокомментировал его ответ, но у меня недостаточно высокая репутация ...
Другой способ достичь этого в Apache - поместить следующие строки в .htaccess
В корневой папке вашего сайта (или в файлах конфигурации Apache).
BrowserMatch "MSIE" isIE
BrowserMatch "Trident" isIE
Header set X-UA-Compatible "IE=edge" env=isIE
Это требует, чтобы у вас были mod_headers
а также mod_setenvif
модули включены.
Дополнительный заголовок HTTP только отправляется в браузеры IE, и ни один из других.
В JSF я использовал:
<h:head>
<f:facet name="first">
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
</f:facet>
<!-- ... other meta tags ... -->
</h:head>
Добавление тега на вашу страницу не будет управлять пользовательским интерфейсом на панели управления Интернетом (диалог, который появляется при выборе инструментов -> Опции). Если вы смотрите на свою домашнюю страницу, которая может быть Google.com, msn.com, о: blank или example.com, панель управления в Интернете не может узнать, каким может быть содержимое вашей страницы, и она не будет загружаться это на заднем плане.
Посмотри на Этот документ на MSDN который обсуждал режим совместимости и как выключить его для вашего сайта.