Инструменты разработчика IE 8: режим браузера: IE 7, IE 8, но что такое IE 8 «Просмотр совместимости»? - PullRequest
8 голосов
/ 24 июня 2010

В IE 8 мы можем использовать Инструменты разработчика. Затем сверху есть режим браузера:

IE 7
IE 8
IE 8 Compatibility View

То есть, если IE 7 заставить страницу отображаться так, как если бы браузер был IE 7, и
IE 8 - заставить страницу отображаться с использованием стандартного IE 8 как есть,
тогда зачем нужны дополнительные 1008 *? Какая польза от этого? Если у нас уже есть IE 7, зачем нужен этот дополнительный режим? Что делает этот режим, чего не может делать режим IE 7?

1 Ответ

6 голосов
/ 24 июня 2010

Разница заключается в строке агента пользователя.

"IE7" точно подражает строке агента пользователя IE7, показывая MSIE 7.0.«IE8» точно использует строку собственного пользовательского агента IE8, показывая MSIE 8.0, а также Trident / 4.0, который является версией механизма компоновки Trident, используемого в IE8.

IE8-Compatibility использует строку собственного пользовательского агента браузера, но меняет «8.0» на «7.0».

Поскольку у Trident не было номера версии до IE7, в строке IE7 не отображается «Trident / xx».Итак, со строкой пользовательского агента MSIE 7.0, если также присутствует «Trident / 4.0», вы знаете, что IE8 работает в режиме совместимости;если «Trident / xx» НЕ существует, вы знаете, что это настоящий IE7 или IE8 в режиме IE7 (не в режиме совместимости).

Надеюсь, мое объяснение достаточно ясное, и вот пример какого-то пользователястроки агента ниже.

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; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

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; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

IE8-совместимость:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; FDM; MS-RTC EA 2; Tablet PC 2.0; .NET4.0C; .NET4.0E)

...