有没有人能解释一下IE8之间的区别?浏览器模式和文档模式简而言之?
我之所以这样问,是因为我们正在做一些IE8测试,不同的人有不同的模式组合,我想试着弄清楚这是如何发生的。
发布于 2010-06-01 22:45:47
来自本文在IE8博客上,标题为IE8如何确定文档模式
因此,我们对您的问题有以下回答:
问:简单来说,浏览器模式和文档模式有什么不同?
A.在开发人员工具中设置浏览器模式以模拟不同的IE浏览器版本行为,而在网页上定义文档模式以告知IE出于兼容性目的以不同的方式呈现站点。
问:是什么原因导致浏览器模式发生变化?
A.用户在开发工具中更改浏览器模式。
问:是什么原因导致文档模式发生变化?
A.由web开发人员设置的Doctype和与X-UA兼容的meta标记和标头。
问:如果用户通过开发人员工具更改了模式,即使刷新了页面,更改也会保留吗?
A.浏览器模式将保留,但如果您更改Doctype和X-UA兼容,它们将返回到页面上定义的内容。
更新:正如Adrien Be在下面指出的,IE9+增加了通过设置在开发工具中更改文档模式的能力,该设置将在刷新时保留。
发布于 2013-01-07 17:54:26
请参阅中的答案此页。
documentMode
属性返回浏览器呈现当前文档所使用的模式。
IE8可以用不同的模式呈现页面,具体取决于!DOCTYPE
或者某些HTML元素的存在。
此属性返回以下值之一:
5 - The page is displayed in IE5 mode
7 - The page is displayed in IE7 mode
8 - The page is displayed in IE8 mode
9 - The page is displayed in IE9 mode
注意:如果没有!DOCTYPE
则IE8将以IE5模式呈现页面!
发布于 2014-08-27 03:57:01
浏览器模式:指定用户代理由浏览器发送到Web服务器。如果您的JavaScript或后端代码基于用户代理字符串以不同的方式呈现,则可能会出现呈现差异。例如,您可能会看到JavaScript检查navigator.userAgent
。(Mozilla/5.0 (兼容;MSIE 8.0...)该值还用于处理条件注释(如果lte IE 9如果是gt IE 8等)。IE 11中的仿真工具没有浏览器模式。它有一个用户代理下拉菜单。
文档模式:指定用于处理标记的呈现引擎。这通常是我们看到渲染问题和浏览器不兼容的地方。最初的目标(不管是好是坏)是网站所有者可以通过meta标签为他们的网站选择一种文档模式。在IE11中,仿真工具不那么容易混淆。
测试:如果您的目标是模拟旧的IE8浏览器,则应该更改两者都有浏览器模式和文档模式。仿真并不完美,因此更彻底的选择是从Microsoft下载免费测试虚拟机在这里,您可以使用*真正“版本的IE 8、9等。
是什么导致这些值发生变化?
浏览器模式不会更改。(除非您在Dev tools中对其进行更改。)它是在向web服务器发出请求之前设置的。
文档模式可以根据web服务器的响应而改变。它可以通过X-UA兼容的HTTP响应头、文档类型、meta标签、内联网站点、标记问题等进行更改。
https://stackoverflow.com/questions/2950598
复制相似问题