8

В IE 8 мы можем выявить инструменты для разработчиков. Затем на вершине, есть режим Браузер:Инструменты разработчика IE 8: Режим браузера: IE 7, IE 8, но что такое IE 8 «View Compatibility View»?

IE 7 
IE 8 
IE 8 Compatibility View 

Так что, если IE 7, чтобы заставить страницу, которая будет показана, если браузер IE 7, и
IE 8, чтобы заставить страницу отображаться с помощью стандартный IE 8, как есть,
то что дополнительно IE 8 "Compatibility View" для? Какая польза? Если у нас уже есть IE 7, зачем нужен этот дополнительный режим? Что делает этот режим для режима IE 7?

ответ

6

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

«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/x.x». Таким образом, с помощью строки пользовательского агента MSIE 7.0, если присутствует «Trident/4.0», вы знаете, что IE8 работает в режиме совместимости; если «Trident/x.x» НЕ существует, вы знаете, что это либо настоящий 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)

+0

Что такое использование IE 8 совместимости тогда? Просто, чтобы иметь другую строку USER_AGENT? Кроме того, когда веб-сайт предоставляет страницы пользователям метатег с совместимостью с IE7, то разве ситуация не меняется? (браузер говорит, что это IE 8, но страница визуализируется на клиенте с использованием механизма рендеринга без трезвика). Итак, что же такое использование выбора «IE 8 Compatibility View» в Инструментах разработчика? –

+0

Веб-сайты могут различать IE7 и IE8 в режиме совместимости на основе строки пользовательского агента. Различные режимы позволят вам увидеть любые различия, которые может иметь веб-сайт, когда он отправляется из двух строк. –

+0

Значит, «Режим браузера» управляет только этой строкой, которая отправляется на сервер? Не влияет ли это на то, как создается контент? Где режим документа вступает в игру? – felickz