Что такое представление совместимости IE9 в инструментах разработчика IE9? - PullRequest
3 голосов
/ 29 марта 2011

Я смотрю на инструменты разработчика IE 9, и когда я нажимаю на режим браузера, я получаю список

IE 7
IE 8
IE 9
IE 9 Compatibility View 

Что это делает?В чем разница между IE 9 и IE 9 Compatibility View?

Ответы [ 2 ]

5 голосов
/ 31 марта 2011

Разница main является строкой User-Agent. Для Internet Explorer 9 отправляется новая и улучшенная строка UA :

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

Для просмотра совместимости будет отправлено что-то похожее на следующую строку:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Zune 4.7)

Обратите внимание на то, как строка совместимости представления UA определяет браузер как MSIE 7.0 ? Режим документа недостаточно для представления совместимости, как задумано. Причина этого в том, что вы не можете быть по-настоящему совместимы с предыдущими версиями, если все еще говорите веб-серверу , что вы используете IE 9 & mdash; он может иметь некоторый серверный код, который идентифицирует браузеры IE 7 и выдает контент, специфичный для этого браузера. Таким образом, инструменты разработчика дают вам возможность увидеть, как будет выглядеть ваша веб-страница, если пользователь щелкнет значок «Представление совместимости» без постоянного включения представления совместимости.

Для полноты картины также стоит упомянуть, что строка версии приложения изменяется аналогичным образом. Строка версии приложения IE 9:

5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

И в режиме совместимости (может отличаться в зависимости от установленного программного обеспечения):

4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Zune 4.7)

Эти строки очень похожи на строку UA, но сценарии на стороне клиента могут ссылаться на эту строку вместо строки UA. IE 9 все еще может быть идентифицирован как в строке UA, так и в версии приложения из части Trident/5.0, независимо от режима совместимости.

2 голосов
/ 01 июля 2012

В принципе, 9 Compatibility View - это функции MSIE 9, но с резервными копиями определенных возможностей для совместимости с MSIE 7. Также в принципе 7 - это то же самое, что MSIE 7, а 8 - то же самое, что и MSIE 8. Нона самом деле, если вы переключаетесь на 7 и возвращаетесь к 9 представлению совместимости, оно ведет себя несколько иначе, чем просто запуск в 9 представлении совместимости.Кроме того, существуют значительные различия между 7 и оригинальной версией MSIE 7.0.Поэтому невозможно дать четкий полный и точный ответ на ваш вопрос.

...