Режим представления совместимости в ie11. Режимы Internet Explorer

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

Включение режима совместимости

Если сайт несовместим с internet explorer 11, то в адресной строке появляется специальная кнопка. Для некоторых веб-страниц эта функция является необходимой, для других – напротив, лишней. Так, если активировать просмотр в режиме совместимости на google.com, то обновленные Google-карты, скорее всего, будут работать неправильно. Другие же сайты, наоборот, будут отображаться некорректно, если данная функция выключена.

Итак, для начала рассмотрим как ее активировать. Заходим из браузера на нужную страницу в сети и нажимаем Сервис. Здесь есть пункт, который позволяет менять параметры режима совместимости. Кликаем на него. Адрес веб-страницы будет прописан в строке, где предлагается добавить сайт в список, просматриваемый в режиме совместимости. Нажимаем на кнопку Добавить, после чего браузер будет корректно отображать ресурс.

Найти раздел Сервис не всегда удается сразу. Поэтому опишу несколько вариантов открытия данного меню. Щелкнув правой мышью вверху открытого браузера, вы активируете контекстное меню. В нем отмечаем командную строку. После этого вверху появится меню с разделами, где вы найдете и Сервис. Другой способ – проделать то же самое, однако, кликнуть на Строку меню. В обоих случаях настройки браузера изменятся, и панель с этими инструментами останется в верхней части internet explorer.

Если вы хотите, чтобы меню появилось временно, то можете нажать на клавиатуре Alt. Кроме того, открыть необходимое вам окно можно кликнув на кнопки Alt, е, р. При этом должен быть включен русский язык, так как е и р – это не латинские, а русские буквы. Если у вас это не получилось сделать по каким-либо причинам вы всегда можете и поставить другой браузер.

Выключение режима совместимости

Тем, кто хочет выключить функцию режима совместимости в internet explorer 11, для начала следует перейти на рабочий стол. После этого запускаем браузер. В открытом интернет-обозревателе нажимаем Alt для вызова строки меню либо пользуемся другими приведенными выше способами.

Заходим в Сервис, где выбираем Удалить журнал браузера. Устанавливаем метку напротив надписи Журнал и жмем Удалить. Можно выбрать из списка отдельные страницы, для которых вы не хотите использовать данную функцию.

Отключение обновлений списка

Следует отметить, что список сайтов совместимости автоматически обновляется. Данная функция может быть довольно полезной, так как сюда заносятся адреса ресурсов, которые разрабатывались под старые версии браузера, использующих Adobe Flash Player и т. д. Но вы всегда можете отключить обновления.

Для этого необходимо зайти в раздел интернет-обозревателя Сервис. В нем выбираем Параметры функции. Далее снимаем метку рядом со строкой, в которой говорится о загрузке обновленных списков с сайта Майкрософт. Закрываем браузер.

Можно отметить, что режим совместимости – это достаточно полезная функция. Поэтому не стоит торопиться е отключать. Делать это следует лишь в случае, когда из-за ее активации страница не загружается корректно. Однако, подобная ситуация встречается крайне редко. Гораздо чаще все происходит наоборот, и сайт лучше отображается при включенном режиме.

Вокруг Internet Explorer сложилась ситуация, которая больше не прослеживается ни с одним другим браузером - разброс версий начинается с 6.0 и заканчивается 9.0. Причины использования устаревших версий могут быть совершенно разные.

  • Internet Explorer встроен в операционную систему Windows и неопытные пользователи даже не подозревают о наличии альтернативы.
  • Корпоративные пользователи с ограниченным доступом не могут самостоятельно обновить версию или сменить браузер.
  • Обновление IE до новой версии происходит через систему Windows Update, которая часто отключается по требованиям безопасности или для снижения интернет-трафика.
  • Некоторые приложения, например, банковские, могут быть «заточены» для работы только под конкретную версию IE.
  • В силу инерции мышления, когда пользователю нравится та программа, с которой он привык работать.

Сама компания Microsoft всячески поощряет переход на новые версии Internet Explorer и в 2010 году прекратила поддержку IE6 и IE7.

Что касается разработчиков сайтов, то для них такой большой набор версий является настоящей проблемой. Каждая версия IE содержит свои уникальные ошибки, особенности отображения веб-страниц, а также не поддерживает какие-то свойства CSS. Одним из радикальных вариантов решения проблемы является полный отказ разработчика от поддержки определенных версий IE. Так, некоторые сервисы Google, сайт vkontakte.ru при попытке зайти на них через IE6 выдают предупреждение о том, что вы используете устаревший браузер. С другой стороны, некоторые разработчики интернет-магазинов бьются за каждый браузер, полагая, что даже если каким-то браузером пользуется 2%, то отказ от него приведет к потере 2% клиентов.

Из-за того, что каждая версия IE может отображать сайт по своему, разработчики IE8 оказались перед сложной дилеммой - эта версия настолько отличалась от предыдущей, что при просмотре через IE8 бо́льшая часть сайтов «рассыпалась». В итоге было принято решение добавить режим представления совместимости; для быстрого переключения сайтов в этот режим возле адресной строки добавлена специальная кнопка (рис. 1.6а). В действительности при переключении в этот режим браузер начинал работать как версия 7.0. В IE9 пошли еще дальше и в нём уже можно переключаться на IE8 или IE7 (рис. 1.6б).

Рис. 1.6. Кнопка для переключения в режим совместимости
a - в IE8, б - в IE9

Обилие версий IE усложняется еще тем, что версии браузера могут работать в нескольких режимах, порождая большое количество комбинаций, которые необходимо учитывать разработчику. Начиная с версии 8.0, переключение режимов в браузере делается через Средства разработчика (Сервис > Средства разработчика ), которое проще вызвать при нажатии на клавишу F12 . В этом инструменте доступно два пункта меню связанных с режимами: Режим браузера (рис. 1.7) и Режим документов.

Рис. 1.7. Режимы браузера

Выбор режима браузера определяет следующее:

  • строка User-Agent, которую браузер отправляет на сервер, в Microsoft называется «агент пользователя»;
  • версия для условных комментариев, которую в Microsoft называют «вектор версии»;
  • режим документа.

Агент пользователя представляет собой текстовую строку, отправляемую на сервер для идентификации браузера, его версии и операционной системы. Значение User-Agent определяет не только браузер, но также поисковых пауков и сетевых роботов. Список возможных значений User-Agent и разбор строки можно посмотреть на сайте http://www.useragentstring.com . В табл. 1.1 приведены значения User-Agent при выборе разных режимов IE.

Табл. 1.1. Значения User-Agent
Режим браузера User-Agent Описание
IE7 Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Tablet PC 2.0; .NET4.0C; AskTbPTV2/5.9.1.14019) Серверу отправляются данные, что браузер IE7.
IE8 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Tablet PC 2.0; .NET4.0C; AskTbPTV2/5.9.1.14019) Серверу отправляются данные, что браузер IE8.
IE9 Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) Серверу отправляются данные, что браузер IE9.
Режим совместимости IE9 Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Tablet PC 2.0; .NET4.0C; AskTbPTV2/5.9.1.14019) Серверу отправляются данные, что браузер IE7, но значение «Trident/5.0» соответствует IE9.

В вашем случае строка User-Agent может отличаться от приведенных в таблице, поскольку она зависит от версии Windows и её параметров.

Вектор версии позволяет с помощью условных комментариев определять версию IE и отдавать для неё отдельный код. Условные комментарии активно применяются в вёрстке для устранения различий в макете между IE и другими браузерами. Подробнее о них пойдёт речь позже, пока же вы можете ознакомиться с небольшим примером, который показывает текст только в IE8. Остальные браузеры игнорируют этот фрагмент, считая его комментарием.

У вас браузер IE8.

Режим документа меняется с помощью меню в Средствах разработчика (рис. 1.8).

Рис. 1.8. Режимы документа

Начиная с версии IE6, имеются следующие режимы (табл. 1.2).

Кроме переключения непосредственно в браузере, задать режим можно через тег , отправив HTTP-заголовок X-UA-Compatible .

Версия может принимать следующие значения (табл. 1.3).

Табл. 1.3. Режимы документа IE
Значение Описание
5 Вынужденное переключение в режим IE5, доктайп при этом игнорируется.
7 Вынужденное переключение в режим IE7, доктайп при этом игнорируется.
8 Вынужденное переключение в режим IE8, доктайп при этом игнорируется.
9 Вынужденное переключение в режим IE9, доктайп при этом игнорируется.
EmulateIE7 При наличии доктайпа переключается в режим IE7, в противном случае в режим совместимости.
EmulateIE8 При наличии доктайпа переключается в режим IE8, в противном случае в режим совместимости.
EmulateIE9 При наличии доктайпа переключается в режим IE9, в противном случае в режим совместимости.
Edge Устанавливает документ в наиболее новый доступный режим. Для версии 8.0 это режим IE8, для версии 9.0 это режим IE9.

К примеру, на сайте Яндекса применяется следующий код для эмуляции режима IE7.

При добавлении данного кода в документ кнопка режима совместимости (рис. 1.6) в браузере исчезает.

Каждое серьезное обновление интернет-обозревателя Internet Explorer вместе с существенным улучшением браузера приводит и к разного рода нестыковкам со стандартами, использовавшимися в версии предыдущей. Internet Explorer 9 - не исключение, но в этом варианте браузера производители предусмотрели возможность переключения просмотра страниц в режим совместимости с предыдущими версиями.

Вам понадобится

  • Internet Explorer 9.

Инструкция

  • Запустите Internet Explorer. Если на рабочем столе нет ярлыка этой программы, то откройте главное меню ОС и в поле поискового запроса наберите название приложения. Впрочем, достаточно будет трех букв int, чтобы ссылка на запуск веб-обозревателя появилась в первой строке результатов поиска. Кликните ее.
  • Раскройте в меню браузера раздел «Сервис». Если меню не отображается в окне приложения, нажмите клавишу Alt. Оно появится под заголовком окна. В разделе «Сервис» выберите наиболее сложно сформулированный пункт - «Параметры режима представления совместимости».
  • Поставьте отметку в чекбоксе у надписи «Отображать все веб-узлы в режиме представления совместимости», когда на экране появится окно с настройками этого режима. Таким способом вы включите самый «жесткий» вариант режима совместимости - браузер будет использовать его для всех страниц, даже тех, которые в этом не нуждаются.
  • Если вы поставите отметку в поле «Добавить обновленные списки веб-узлов с веб-узла Майкрософт», режим совместимости будет задействован только для тех сайтов, несовместимость которых с этой версией браузера известна корпорации Microsoft.
  • Вы можете составить и собственный список сайтов, к которым следует применять этот режим, занося в него все встреченные страницы, отображающиеся с искажениями. Делать это можно с помощью поля под надписью «Добавить этот веб-узел» и кнопки «Добавить».
  • Нажмите кнопку «Закрыть» в диалоговом окне, чтобы Internet Explorer начал использовать в работе измененные вами настройки.
  • Есть другая, более простая возможность включить режим совместимости в нужный момент. Когда браузер открывает очередную страницу, он сам пытается оценить ее совместимость. Если для нормального отображения, по его мнению, требуется включение этого режима, в адресной строке появляется пиктограмма со стилизованным изображением разорванной пополам страницы. Щелкните этот значок левой кнопкой мыши, и веб-обозреватель активирует режим совместимости, а также изменит цвета значка с бело-серого на сине-голубой.
  • Sometimes a website you"re visiting doesn"t look like you expect it to. Images might not show up, menus might be out of place, and text boxes could be jumbled together. This can be caused by a compatibility problem between Internet Explorer and the site you"re on. When a site is incompatible with Internet Explorer, you"ll see the Compatibility View button in the Address bar. Once switched on Compatibility view further will be switched on automatically in IE, when You enter web page.

    To switch off Compatibility view :

    In Internet Explorer 8, 9, 10 and 11:

    You can also clear the entire list of sites using Compatibility View by deleting your browsing history. To do that:

    In Internet Explorer 8 :

    • Open Internet Explorer.
    • Click Safety, and then click Delete Browsing History.

    In Internet Explorer 9 :

    • Open Internet Explorer.
    • Click Tools, and then click Delete browsing history.
    • In the Delete Browsing History dialog box, click the History check box, and then click Delete.

    In Internet Explorer 10 :

    • Open Internet Explorer in the desktop.
    • Tap or click Tools, and then tap or click Delete browsing history.
    • In the Delete Browsing History dialog box, tap or click the History check box, and then tap or click Delete.

    In Internet Explorer 11 :

    • Open the desktop, and then tap or click the Internet Explorer icon on the taskbar.
    • Press the Alt key to display the menu bar (or press and hold the address bar and then select Menu bar).
    • Tap or click Tools, and then tap or click Delete browsing history.
    • In the Delete Browsing History dialog box, select the History check box, and then tap or click Delete.

    The Compatibility List is frequently updated, and Internet Explorer automatically downloads these update. This list includes sites that might"ve been designed for older or other browsers, sites that use Adobe Flash Player, and other settings that help give you a better browsing experience. If you don"t want these updates, you can turn off Compatibility List Updates at any time. To turn off Compatibility List Updates :

    In Internet Explorer 8 :

    • Open Internet Explorer.

    In Internet Explorer 9 :

    • Open Internet Explorer.
    • Press the Alt key to display the Menu bar (or right–click the Address bar and then select Menu bar).
    • Clear the Include updated website lists from Microsoft check box, and then tap or click Close.

    In Internet Explorer 10 for Windows 7:

    • Open Internet Explorer.
    • Press the Alt key to display the Menu bar (or righ-click the Address bar and then select Menu bar).
    • Clear the Download updated compatibility lists from Microsoft check box, and then click Close.

    In Internet Explorer 10 :

    • Open Internet Explorer in the desktop.
    • Press the Alt key to display the Menu bar (or press and hold the Address bar and then select Menu bar).
    • Tap or click Tools, and then tap or click Compatibility View settings.
    • Clear the Download updated compatibility lists from Microsoft check box, and then tap or click Close.

    To change Compatibility View settings:

    In Internet Explorer 8 :

    • Open Internet Explorer.
    • Tap or click Tools, and then tap or click Compatibility View Settings.

    In Internet Explorer 9 :

    • Open Internet Explorer.
    • Press the Alt key to display the Menu bar (or right–click the Address bar and then select Menu bar).
    • Tap or click Tools, and then tap or click Compatibility View settings.

    In Internet Explorer 10 for Windows 7:

    • Open Internet Explorer.
    • Press the Alt key to display the Menu bar (or right-click the Address bar and then select Menu bar).
    • Click Tools, and then click Compatibility View settings.

    In Internet Explorer 10 :

    • Open Internet Explorer in the desktop.
    • Press the Alt key to display the Menu bar (or press and hold the Address bar and then select Menu bar).
    • Tap or click Tools, and then tap or click Compatibility View settings.
    If you were unable to find answer for your question, please write to

    Да-да. Если ваш код отлично работает в Developer Preview, это совершенно не значит, что он заработает в релизной версии, которая внезапно одномоментно раскатится паре десятков миллионов человек по всему миру. Но вы ни в коем случае не занимайтесь детектом версии по юзер-агенту!

    Фиг с ним, с Developer Preview. В их прекрасной поделке нужно отличать версию оси, под которой она работает! Я серьёзно.
    Вот сидят люди. В трудовой у них, наверняка, написано что-то типа Senior Software Architect. Придумывают стандарт PointerEvents , в котором, чин чинарём, всё по-взрослому - специальный флаг navigator.pointerEventsEnabled показывает, поддерживает ли браузер пойнтер-события или нет. Чтобы, понимаешь, никто ничего по юзер-агенту не детектил, а всё как в нормальных браузерах.

    А потом внезапно выясняется, что у тех же людей обработка жестов падает в IE10/Win7. Вот прям в msdn-е так и написано:

    Note The APIs we discuss in this section aren"t supported in Windows 7 or earlier.

    msdn.microsoft.com/en-us/library/ie/dn433243%28v=vs.85%29.aspx

    Так что помимо 20 разных версий IE у вас есть как минимум две разных версии ОСи - Win7 и Win8. На самом деле, их больше - есть ещё Windows Phone и Windows RT, а в Windows 8 ещё есть два режима браузера - метро и десктоп. Они все отличаются. Нам повезло, мы не нашли прям заметных багов, чтобы держать отдельные ветки кода ещё и под эти оси - не факт, что вы окажетесь столь же удачливыми. Ну что, сколько там версий IE получилось? Я уже запутался, но, наверное, под сотню.

    А теперь - десерт! Вот допустим вы просто пишете веб-странички, вам плевать на режимы браузера и вы вообще недоумеваете, чего париться - сайт ведь не может сам перейти в какой-нибудь режим совместимости, правда?

    У меня есть для вас плохие новости, ребята. Заходите вот сюда:
    iecvlist.microsoft.com/ie10/201206/iecompatviewlist.xml
    И ищите там свой сайт.

    Знаете, что это? Это глобальный Compatibility List, в который заносятся сайты, которые, по мнению Майкрософт, нужно показывать в каком-нибудь из режимов совместимости.

    Нет, серьёзно, они отсматривают весь Интернет и составляют реестр сайтов, которые плохо себя вели!

    Знаете, как сайты попадают в этот список? Майкрософт выпускает превью-версии своих браузеров. В них есть специальная кнопочка в адресной строке - показать этот сайт в режиме совместимости. Майкрософт собирает анонимную статистику - если в эту кнопку часто тыкают, сайт попадает в реестр.

    Серьёзно, они этого даже не скрывают. Похоже, даже немножечко гордятся.
    msdn.microsoft.com/ru-ru/library/gg699485%28v=vs.85%29.aspx

    Выбраться из этого списка очень просто - написать в саппорт Майкрософт, ага.

    Ну и вишенка на торте: допустим я вас убедил и вы регулируете, в каком режиме показывать страницу, с помощью специальной меты , дабы избежать ненужных проблем. Так вот, в IE11 (по крайней мере в RTM-версии, сейчас лень проверять) она не работает - факт нахождения в списке совместимости приоритетнее заданного вебмастером X-UA-Compatible!

    Дорогая Microsoft! Прекрати, пожалуйста, над нами издеваться и вкрути движок Gecko в свой так сказать продукт.

    Теги: Добавить метки