Вокруг 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 веб-страницы, несовместимой с текущей версией обозревателя, в адресной строке появляется специальная кнопка «Представление совместимости». Чтобы увидеть ее, необходимо вызвать главное системное меню, нажав кнопку «Пуск», и перейти в пункт «Все программы». Запустите приложение Internet Explorer и перейдите на нужную интернет-страницу. Определите текущее состояние режима совместимости - активное состояние режима отображается цветной кнопкой, отключенное - схематической. Для отключения активного состояния режима совместимости, просто нажмите цветную кнопку.
  • Раскройте меню «Сервис» верхней панели инструментов браузера Internet Explorer и укажите пункт «Параметры режима представления совместимости». Снимите флажок в строке «Отобразить все узлы в режиме представления совместимости» в открывшемся диалоговом окне и подтвердите сохранение сделанных изменений, нажав кнопку OK.
  • Альтернативным методом отключения представления страниц в режиме совместимости может служить использование мета-элемента, являющегося одноименным заголовком ответа сервера, X-UA-Compatible, имеющего значение IE=edge:тег meta http-equiv="X-UA-Compatible" content="IE=edge" / тег.Обратите внимание на то, что значение IE=edge принудительно включает последний возможный режим работы браузера, безотносительно к его текущей версии. Таким образом, представление интернет-страниц в режиме совместимости с предыдущими версиями будет отключено программно. В Internet Explorer версии 8 режим edge приведет к отображению страниц только на уровне данной версии, в версии 9 - на следующем уровне. Рекомендуется ограничить использование этого режима тестовыми веб-страницами и другими целями, не имеющими отношения к производству, поскольку результаты неправильного отображения страниц до конца не изучены.
  • Каждое серьезное обновление интернет-обозревателя Internet Explorer вместе с существенным улучшением браузера приводит и к разного рода нестыковкам со стандартами, использовавшимися в версии предыдущей. Internet Explorer 9 - не исключение, но в этом варианте браузера производители предусмотрели возможность переключения просмотра страниц в режим совместимости с предыдущими версиями.

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

    • Internet Explorer 9.

    Инструкция

  • Запустите Internet Explorer. Если на рабочем столе нет ярлыка этой программы, то откройте главное меню ОС и в поле поискового запроса наберите название приложения. Впрочем, достаточно будет трех букв int, чтобы ссылка на запуск веб-обозревателя появилась в первой строке результатов поиска. Кликните ее.
  • Раскройте в меню браузера раздел «Сервис». Если меню не отображается в окне приложения, нажмите клавишу Alt. Оно появится под заголовком окна. В разделе «Сервис» выберите наиболее сложно сформулированный пункт - «Параметры режима представления совместимости».
  • Поставьте отметку в чекбоксе у надписи «Отображать все веб-узлы в режиме представления совместимости», когда на экране появится окно с настройками этого режима. Таким способом вы включите самый «жесткий» вариант режима совместимости - браузер будет использовать его для всех страниц, даже тех, которые в этом не нуждаются.
  • Если вы поставите отметку в поле «Добавить обновленные списки веб-узлов с веб-узла Майкрософт», режим совместимости будет задействован только для тех сайтов, несовместимость которых с этой версией браузера известна корпорации Microsoft.
  • Вы можете составить и собственный список сайтов, к которым следует применять этот режим, занося в него все встреченные страницы, отображающиеся с искажениями. Делать это можно с помощью поля под надписью «Добавить этот веб-узел» и кнопки «Добавить».
  • Нажмите кнопку «Закрыть» в диалоговом окне, чтобы Internet Explorer начал использовать в работе измененные вами настройки.
  • Есть другая, более простая возможность включить режим совместимости в нужный момент. Когда браузер открывает очередную страницу, он сам пытается оценить ее совместимость. Если для нормального отображения, по его мнению, требуется включение этого режима, в адресной строке появляется пиктограмма со стилизованным изображением разорванной пополам страницы. Щелкните этот значок левой кнопкой мыши, и веб-обозреватель активирует режим совместимости, а также изменит цвета значка с бело-серого на сине-голубой.
  • Internet Explorer является, пожалуй, единственным браузером, с которым хотя бы раз в жизни приходилось иметь дело абсолютно всем пользователям Windows: недаром же компания Microsoft совершенно бесплатно пичкает им каждую версию операционной системы. При этом, конечно, этот программный продукт далек по своим характеристикам от идеала, но надежда на лучшее все-таки есть. Присмотревшись к обновленному IE 11, несложно заметить, что последняя разработка смотрится, куда лучше, чем ранние версии: тут тебе и новенький интерфейс, и улучшенная скорость загрузки веб-страниц.

    Только вот отдельные сайты по-прежнему отражаются некорректно: то изображения оказываются растянуты, то текст хаотично разбросан по всему полю, то меню управления перемещается из привычной точки A в точку B. В принципе выход из этой ситуации простой – достаточно перенастроить в Internet Explorer 11 режим совместимости, чтобы проблема самоустранилась. Но какие варианты настройки при этом можно предложить?

    Как настроить браузер?

    В принципе способов настройки в 11-м Internet Explorer режима совместимости не так-то много: всего-то включение и отключение соответствующего параметра для сайта. Другой вопрос – когда и как каждый из этих вариантов действий применим для Windows?

    С первой его частью вроде бы все ясно – включаем / отключаем его в том случае, если элементы сайта не отображаются вовсе или загрузились некорректно. Соответственно, если режим совместимости для сайта был подключен, нужно его отключить, чтобы проблема исчезла и, наоборот. Что касается второй части вопроса, то здесь все несколько сложнее.

    Как подключить параметры?

    Исходя из опыта использования предыдущих версий стандартного браузера Windows, несложно догадаться, что включить режим совместимости в Internet Explorer 11 можно через настройку параметров просмотра в разделе «Сервис». Единственная загвоздка в том, что найти его с первого раза не так-то просто, ведь в 11-ой версии стандартное файловое меню скрыто и, для того чтобы его «реанимировать», придется воспользоваться одной из доступных уловок, а именно:


    Так или иначе, после появления окошка «Параметры просмотра» для подключения режима совместимости в стандартном браузере Windows сначала ставим галочки напротив двух параметров – «Отображать сайты…» и «Использовать списки совместимости…», а затем указываем адрес веб-портала, с которым возникают проблемы при загрузке, и жмем кнопку «Добавить»:

    Какой итог? Меньше 2-х минут – и режим совместимости в 11-й версии IE оказывается включен!

    Как отключить параметр?

    В том случае, если сайт перестает нормально функционировать из-за включенного в 11-м IE режима совместимости, придется прибегнуть к одному из способов аннуляции этого параметра. В первую очередь, можно вооружиться методом от обратного, т. е. как включали, так и отключаем. В этом случае для настройки совмещенного режима открываем меню «Сервис», выбираем в нем пункт «Параметры просмотра…», а затем находим в списке добавленных в исключение сайтов тот, с которым возникают проблемы при просмотре, кликаем по нему мышкой и жмем кнопку «Удалить»:

    Если проблемного сайта в списке не оказалось, весьма вероятно, что он включен в стандартные списки Windows. В таком случае для решения проблемы с его загрузкой понадобится в окошке «Параметры просмотра…» снять галочку с пункта «Использовать списки…».

    Кроме того, решить проблему с отключением параметра поможет очистка журнала браузера для Windows, то есть удаление истории просмотренных в нем сайтов. Для этого при открытом Internet Explorer в версии 11 жмем Alt, затем кликаем в появившемся меню вкладку «Сервис» и выбираем в предложенном списке соответствующую задачу. Далее ставим галочку напротив пункта «Журнал» и кликаем кнопку «Удалить».