Режимы Internet Explorer. Режимы Internet Explorer Параметры режима представления совместимости в ie11
Да-да. Если ваш код отлично работает в 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 в свой так сказать продукт.
Теги: Добавить метки
Режим совместимости IE - это опция, предназначенная для отображения страницы в браузере так, как бы она выглядела в более старой его версии. Причина, по которой такой режим появился, заключается в том, что различия между тем, как старые версии IE отображали веб-страницы, были настолько велики, что с выходом новых его версий многие сайты переставали отображаться корректно.
Для включения такого режима существует специальная кнопка, расположенная в конце адресной строки:
Также режим совместимости можно включить на панели “Средства разработчика” (включается нажатием F12), меню “Режим браузера”.
В IE9 в этом меню есть возможность выбора разных режимов совместимости: IE7, IE8 и режим представления совместимости IE9. Выбор одного из этих режимов определяет то, какое значение User-Agent будет отправлено на сервер, каким образом будут прочитаны условные комментарии и режим документа.
User-Agent - это строка, которую браузер отправляет на сервер для того, чтобы идентифицировать его версию, а также версию операционной системы. Следовательно, если выбран режим браузера IE7, то сервер получит данные о том, что это IE7, если IE8, то IE8, и.т.д. Если выбрать режим представления совместимости IE9, то в User-Agent также будут отправлены данные, что версия - IE7. Если необходимо, чтобы сайт всегда открывался в определенном режиме совместимости, можно задать User-Agent через тег :
Если здесь прописать версию от 5 до 9, то страница будет принудительно отображаться именно в режиме этой версии браузера. Также версии можно задать значение “Edge”:
Это означает, что документ будет открываться в наиболее доступном режиме браузера, то есть, если используемый браузер IE8 - будет режим IE8, если IE9, то IE9, и.т.д. В таком случае кнопка “Представление совместимости” возле адресной строки не будет доступна.
Важно, чтобы в секции head выше тега был только тег
Также режимом представления совместимости в браузере можно управлять через меню “Сервис” -> “Параметры режима представления совместимости”.
Даже если разработчики явно указали на совместимость страницы с последней версией IE, и кнопка включения режима совместимости недоступна, через это меню можно добавить сайт в список тех, которые всегда должны отображаться в режиме представления совместимости.
Иногда встречаются ситуации, когда в Internet explorer 11 или 10 веб страницы отображается не корректно.
Это происходит потому, что новых браузерах вид страниц может немного изменятся. В итоге сайт может выглядеть необычно.
Чтобы вид исправить, разработчики внедрили в IE 11 и 10 функцию, под названием «режим совместимости».
Если включить режим совместимости в IE 11 или 10, то параметры отображения сайтов изменяются – приобретают функциональность Internet explorer 9 или 8.
Режим совместимости можно включать не только для браузера IE 11 и 10, но и для игр и программ, только немного по-другому.
Настройка браузера Internet Explorer 11 или 10 для включения режима совместимости
Прежде чем перейти к включению режима совместимости в браузерах IE 11 или 10 вам потребуется выполнить один маленький шаг, а точнее включить отображение «меню».
Для этого кликните в любом месте в самом верху браузера правой клавишей мышки и поставьте галочку напротив строки: «строка меню».
Теперь появится новая линейка, в которой вам будут доступно множество настройки «под себя».
Также обратите внимание, что при несовместимости страницы с браузером internet explorer 11, то в адресной строке (с правой стороны) возникает кнопка, нажав на которую браузер автоматически переключится, на отображение сайтов как было в старых версиях.
Включение режима совместимости в IE 11 и 10
Теперь, когда у вас появилась линейка меню, нажмите на опцию «сервис» и в появившейся вкладке выберите: «параметры просмотра в режиме совместимости» или «просмотр…».
После этого адрес веб-страницы, на которой вы находитесь, будет прописан в появившемся окне (если выберите первый пункт), где вам будет предложено добавить сайт для просмотра в режиме совместимости.
Нажмите на кнопку «добавить» и ваш браузер InternetExplorerперестроится и начнет корректно отображать добавленный сайт.
Тем, кто желает выключить режим совместимости в internet explorer 11, в открытом обозревателе нажмите клавишу «Alt» для появления строки меню или вызовите ее как описано выше.
Далее перейдите в «сервис» и нажмите на строку «удалить журнал браузера». Появится окно в котором можно очистить список режима совместимости как полностью, так и для отдельных сайтов (опция журнал).
Следует отметить, что эта функция в интернет эксплорер довольно полезна и обновляется автоматически.
Туда заносятся адреса сайтов, которые разработаны под старые версии IE, хотя при желании обновления можно отключить.
Однако отключать не торопитесь — многие сайты при включенной функции намного лучше отображается. Успехов.
Когда вы разрабатываете сайт, нужно проверять его на совместимость с разными версиями Internet Explorer. С другой стороны, можно просто попасть на страницу, несовместимую с новейшей версией браузера Microsoft. В таких случаях вам поможет режим совместимости Internet Explorer 9.
Если вы попали на страницу, которая отображается некорректно, то первым делом попробуйте включить режим совместимости (чаще всего это помогает, пример на рисунке 1).
Рисунок 1 - Сайт, не совместимый с Internet Explorer 9 (слева стандартный просмотр, справа - в режиме совместимости)
Когда вы заходите на сайт, который явно не указывает на то, что он совместим с Internet Explorer 9, то в адресной строке появляется кнопка . Нажмите на эту кнопку для включения режима совместимости (страница после нажатия на эту кнопку обновится). Для отключения режима совместимости нажмите эту кнопку повторно. После этого сайт всегда будет отображаться в режиме совместимости, а кнопка будет вот такой .
Если разработчики сайта обновят сайт и явно укажут на совместимость сайта с Internet Explorer 9, то режим совместимости автоматически отключится. Для просмотра параметров режима совместимости нажмите
Рисунок 2 - Параметры режима представления совместимости
Для добавления сайта в список введите URL сайта в строку Добавить этот веб-узел и нажмите Добавить . Если вы хотите всегда работать в режиме совместимости (например, вы работаете только в локальной сети, где веб-узлы разрабатывались в расчете на восьмую или седьмую версию IE), то поставьте флажок в пункт Отображать все веб-узлы в режиме представления совместимости . В параметре Отображать узлы интрасети в режиме представления совместимости по умолчанию стоит флажок, он указывает браузеру открывать сайты предприятия в режиме совместимости с IE7.
Если вы хотите включить режим совместимости не под восьмую версию браузера, то нажмите
Рисунок 3 - Панель разработчика
Выберите Режим документов и в раскрывающем списке выберите нужную версию браузера. Для того чтоб браузер опознавался на сайтах как другая версия нажмите Режим браузера и выберите нужную версию.
Команда разработчиков Internet Explorer 9 пообещала, что пользователи IE смогут просматривать весь интернет. По-моему, у них это получилось.
Когда вы разрабатываете сайт, нужно проверять его на совместимость с разными версиями Internet Explorer. С другой стороны, можно просто попасть на страницу, несовместимую с новейшей версией браузера Microsoft. В таких случаях вам поможет режим совместимости Internet Explorer 9.
Если вы попали на страницу, которая отображается некорректно, то первым делом попробуйте включить режим совместимости (чаще всего это помогает, пример на рисунке 1).
Рисунок 1 - Сайт, не совместимый с Internet Explorer 9 (слева стандартный просмотр, справа - в режиме совместимости)
Когда вы заходите на сайт, который явно не указывает на то, что он совместим с Internet Explorer 9, то в адресной строке появляется кнопка . Нажмите на эту кнопку для включения режима совместимости (страница после нажатия на эту кнопку обновится). Для отключения режима совместимости нажмите эту кнопку повторно. После этого сайт всегда будет отображаться в режиме совместимости, а кнопка будет вот такой .
Если разработчики сайта обновят сайт и явно укажут на совместимость сайта с Internet Explorer 9, то режим совместимости автоматически отключится. Для просмотра параметров режима совместимости нажмите
Рисунок 2 - Параметры режима представления совместимости
Для добавления сайта в список введите URL сайта в строку Добавить этот веб-узел и нажмите Добавить . Если вы хотите всегда работать в режиме совместимости (например, вы работаете только в локальной сети, где веб-узлы разрабатывались в расчете на восьмую или седьмую версию IE), то поставьте флажок в пункт Отображать все веб-узлы в режиме представления совместимости . В параметре Отображать узлы интрасети в режиме представления совместимости по умолчанию стоит флажок, он указывает браузеру открывать сайты предприятия в режиме совместимости с IE7.
Если вы хотите включить режим совместимости не под восьмую версию браузера, то нажмите
Рисунок 3 - Панель разработчика
Выберите Режим документов и в раскрывающем списке выберите нужную версию браузера. Для того чтоб браузер опознавался на сайтах как другая версия нажмите Режим браузера и выберите нужную версию.
Команда разработчиков Internet Explorer 9 пообещала, что пользователи IE смогут просматривать весь интернет. По-моему, у них это получилось.