我正在查看 IE 9 开发人员工具,当我单击浏览器模式时,我会看到一个列表
IE 7
IE 8
IE 9
IE 9 Compatibility View
那有什么作用? IE 9 和 IE 9 兼容性视图有什么区别?
The main区别在于用户代理字符串。对于 Internet Explorer 9,新的和改进的 http://msdn.microsoft.com/en-us/library/ff986085(v=vs.85).aspx发送 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 — 它可能有一些服务器端代码,可以识别 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
部分,无论兼容模式如何。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)