IE: почему видимость совместимости исчезает для некоторых сайтов?
25
IE9 отображает кнопку режима совместимости для некоторых веб-сайтов, но не для других. Для остальных я все еще могу включить его, добавив его через «Инструменты»> «Параметры представления совместимости», и тогда он будет вести себя как положено.
Почему эта кнопка не появляется всегда? Есть ли способ отменить это?
В последних версиях Internet Explorer эти режимы могут управлять функциями, которые поддерживаются веб-страницами, и способами отображения страниц.
IE=EmulateIE8 mode сообщает Internet Explorer использовать директиву для определения способа отображения содержимого. Директивы режима стандартов отображаются в стандартном режиме Internet Explorer 8, а директивы режима причуд отображаются в режиме IE5. В отличие от режима IE8, режим эмуляции IE8 соответствует директиве.
IE=EmulateIE7говорит Internet Explorer использовать директиву для определения способа отображения содержимого. Директивы режима стандартов отображаются в стандартном режиме Internet Explorer 7, а директивы режима причуд отображаются в режиме IE5. В отличие от режима IE7, режим эмуляции IE7 соответствует директиве. Для многих веб-сайтов это предпочтительный режим совместимости:
IE=5 отображает контент, как если бы он отображался в режиме причуд Internet Explorer 7, который очень похож на способ отображения контента в Internet Explorer 5.
IE=7 отображает контент, как если бы он отображался в стандартном режиме Internet Explorer 7, независимо от того, содержит ли страница директиву.
IE=8 поддерживает многие установленные стандарты, в том числе спецификацию каскадных таблиц стилей W3C уровня 2.1 и API селекторов W3C; он также обеспечивает ограниченную поддержку спецификации уровня 3 каскадных таблиц стилей W3C (рабочий проект) и других новых стандартов.
IE=9 обеспечивает наивысшую доступную поддержку для существующих и развивающихся отраслевых стандартов, включая HTML5 (рабочий проект), спецификацию каскадных стилей W3C уровня 3 (рабочий проект), спецификацию масштабируемой векторной графики (SVG) 1.0 и другие.
IE=Edge говорит Internet Explorer отображать контент в самом высоком доступном режиме. В Internet Explorer 8 это эквивалентно режиму IE8.
Если (гипотетический) будущий выпуск Internet Explorer поддерживает режим с более высокой совместимостью, то страницы, переведенные в граничный режим, будут отображаться в самом высоком режиме, поддерживаемом этой версией. Те же самые страницы будут отображаться в режиме IE8 при просмотре в Internet Explorer 8; и в режиме IE9 при просмотре с помощью Internet Explorer 9.
Резюме
IE не будет отображать кнопку Compatibility View, если либо:
содержимое метатега соответствует используемой вами версии IE; или
Для чего, однако, можно было ожидать, что веб-сайты будут отображаться очень хорошо, если предположить, что создатель веб-сайта задумался над тегом ...
Если это происходит для локальных (интрасетевых) сайтов: кажется, что настройки по умолчанию всегда заставляют сайты интрасети работать в режиме совместимости и, что еще хуже, вообще не отображают кнопку.
Отключение этого параметра «Отображать сайты интрасети в представлении совместимости» приводит к тому, что кнопка отображается и для локальных сайтов, поэтому ее можно отключить. Помните, что настройки просмотра совместимости перечислены только в «полном» меню (нажмите Alt-T), а не в сокращенном значке шестеренки:
Это связано с тем, что интранет-сайты и внутренние веб-приложения многих компаний были запрограммированы для работы на IE6. Microsoft знала, что большинство пользователей IE6 были сотрудники, вынужденные использовать IE6. Перевод всех сайтов в режим совместимости по умолчанию сделал плавный, но не плавный переход на обновленную версию IE. Если бы многие компании были как [отредактированы], то это было бы так. Вы должны помнить, что изменения стоят денег. Компании заботятся только о деньгах. Отредактируйте название компании, чтобы защитить их . Эта компания даже не переключалась на версию обновления, пока не появился взлом Google / China.
SgtOJ
@ Брайан, наверное, ты прав. Жаль, хотя: гораздо лучшим решением было бы активировать его по умолчанию. Это глупое предпочтение IE не только активирует режим совместимости, но и скрывает кнопку совместимости.
Арьян
Вау. Никогда не знал об этом. Весь день сводил меня с ума, пока я не наткнулся на твой пост. Благодарность!
Система
Что произойдет, если вы не хотите режим совместимости, но установлен флажок «Отображать сайты интрасети в режиме совместимости»? Это переопределяет <meta http-equiv="X-UA-Compatible" content="IE=edge">тег? Или метатег отменяет флажок параметра совместимости?
Бен
@Ben, я давно не пользовался IE, но думаю, что включение «Отображение сайтов интрасети в режиме совместимости» действительно отменит <meta http-equiv="X-UA-Compatible" content="IE=edge">. Я не 100% уверен, но я помню , что очень раздражает не не понимая , почему страницы показывали плохо, поэтому я могу только предположить , что эти страницы действительно включают метку времени. Но тогда, может быть, я не знал об этом теге в те дни ...
Вы нажимаете кнопку «Представление совместимости» в адресной строке при просмотре веб-страницы. При отображении эта кнопка появляется слева от кнопки Обновить и содержит изображение сломанного куска бумаги. Это позволяет просматривать совместимость для всех документов в домене просматриваемого веб-сайта.
Параметр «Отображать все веб-сайты в режиме совместимости» в настройках представления совместимости включен.
Параметр «Автоматическое восстановление после ошибок макета страницы с представлением совместимости» включен, и веб-страница перестает отвечать на запросы или вызывает сбой браузера. Когда это происходит, Internet Explorer открывает страницу в представлении совместимости после устранения проблемы.
Групповые политики, определяющие сайты, которые должны открываться в представлении совместимости, включены администратором вашего компьютера.
Вы использовали инструменты разработчика F12 для изменения режима браузера, чтобы идентифицировать Internet Explorer как более раннюю версию браузера.
Включен список просмотра совместимости, который определяет список веб-сайтов, которые автоматически отображаются в представлении совместимости.
Чтобы отключить / переопределить представление совместимости, вам нужно будет выполнить действия, описанные выше.
Чтобы удалить ваш сайт из списка просмотра в режиме совместимости (или оспорить удаление вашего сайта из списка), попросите владельца всего сайта убедиться, что сайт домена отображается в списке просмотра в режиме совместимости. Если это так, отправьте электронное письмо по адресу iepo@microsoft.com, содержащее следующую информацию:
Имя владельца Фирменное наименование Название компании Уличный адрес Адрес электронной почты Номер телефона Адрес сайта
Microsoft рассмотрит предоставленную информацию и удалит ваш сайт из списка совместимости при следующем запланированном обновлении.
Я просто потратил некоторое время, пытаясь определить, почему значок представления совместимости недоступен ни на одном из доменов моей компании, когда он не соответствует ни одному из условий, описанных в других ответах на этот вопрос.
Это объясняется тем, что «X-UA-Compatible» не обязательно должен быть метатегом. Он также может быть указан как заголовок HTTP (не является частью содержимого HTML), и это относится к домену, с которым у меня возникают проблемы.
Помимо
<meta>
тега, как объяснено в ответе Брайана :Если это происходит для локальных (интрасетевых) сайтов: кажется, что настройки по умолчанию всегда заставляют сайты интрасети работать в режиме совместимости и, что еще хуже, вообще не отображают кнопку.
Отключение этого параметра «Отображать сайты интрасети в представлении совместимости» приводит к тому, что кнопка отображается и для локальных сайтов, поэтому ее можно отключить. Помните, что настройки просмотра совместимости перечислены только в «полном» меню (нажмите Alt-T), а не в сокращенном значке шестеренки:
Или же заставьте IE больше не распознавать сайты интрасети .
источник
<meta http-equiv="X-UA-Compatible" content="IE=edge">
тег? Или метатег отменяет флажок параметра совместимости?<meta http-equiv="X-UA-Compatible" content="IE=edge">
. Я не 100% уверен, но я помню , что очень раздражает не не понимая , почему страницы показывали плохо, поэтому я могу только предположить , что эти страницы действительно включают метку времени. Но тогда, может быть, я не знал об этом теге в те дни ...В соответствии с этой всеобъемлющей статьей MSDN о представлении совместимости в следующем списке описаны различные способы включения представления совместимости:
Чтобы отключить / переопределить представление совместимости, вам нужно будет выполнить действия, описанные выше.
Список совместимости - это XML-файл, поддерживаемый Microsoft.
источник
Я просто потратил некоторое время, пытаясь определить, почему значок представления совместимости недоступен ни на одном из доменов моей компании, когда он не соответствует ни одному из условий, описанных в других ответах на этот вопрос.
Это объясняется тем, что «X-UA-Compatible» не обязательно должен быть метатегом. Он также может быть указан как заголовок HTTP (не является частью содержимого HTML), и это относится к домену, с которым у меня возникают проблемы.
Эта страница MS содержит более подробную информацию, многие из которых приведены в ответе SgtOJ: http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx
источник