Internet explorer 8 IE8浏览器模式与文档模式
有人能简单地解释一下IE8浏览器模式和文档模式之间的区别吗Internet explorer 8 IE8浏览器模式与文档模式,internet-explorer-8,ie8-browser-mode,Internet Explorer 8,Ie8 Browser Mode,有人能简单地解释一下IE8浏览器模式和文档模式之间的区别吗 是什么导致浏览器模式发生更改 是什么导致文档模式发生更改 如果用户通过开发人员工具更改模式,即使页面刷新,更改是否仍然存在 我问这个问题是因为我们正在做一些IE8测试,不同的人有不同的模式组合,我想试着弄清楚这是如何发生的。来自IE8博客,标题为《IE8如何确定文档模式》 开发人员工具设置覆盖选项卡中显示的页面的所有文档模式 除非X-UA-Compatible值为EmulateIE7或EmulateIE8,否则X-UA-Compat
- 是什么导致浏览器模式发生更改
- 是什么导致文档模式发生更改
- 如果用户通过开发人员工具更改模式,即使页面刷新,更改是否仍然存在
A.浏览器模式在开发者工具中设置,以模拟不同的IE浏览器版本行为,而文档模式在网页上定义,以告知IE为兼容目的以不同方式呈现网站 Q.是什么导致浏览器模式发生变化?
A.用户在开发工具中更改浏览器模式 Q.是什么导致文档模式发生变化?
A.由web开发人员设置的Doctype和与X-UA兼容的元标记和头 Q.如果用户通过开发人员工具更改模式,即使页面刷新,更改是否仍然存在?
A.浏览器模式将保持不变,但如果更改Doctype和X-UA-Compatible,它们将返回页面上定义的模式 更新:正如阿德里安·贝(Adrien Be)在下面指出的那样,IE9+增加了通过设置更改开发工具中的文档模式的能力,该设置将在刷新时保持不变。请参阅中的答案
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模式呈现页面
浏览器模式:指定浏览器发送到Web服务器的用户代理。如果JavaScript或后端代码根据用户代理字符串呈现不同,则可能会出现呈现差异。例如,您可能会看到检查
navigator.userAgent
的JavaScript。(Mozilla/5.0(兼容;MSIE 8.0…)此值也用于处理([如果lte IE 9],[如果gt IE 8]等)。IE 11中的仿真工具没有浏览器模式。它具有用户代理下拉列表
文档模式:指定用于处理标记的呈现引擎。这通常是我们看到呈现问题和浏览器不兼容的地方。最初的目标(无论好坏)是网站所有者可以通过元标记为其网站选择文档模式。在IE 11中,仿真工具不太容易混淆
测试:
如果您的目标是模拟旧的IE8浏览器,那么您应该同时更改浏览器模式和文档模式。模拟并不完美,因此更彻底的选择是,您可以在哪里使用“真实”版本的IE8、9等进行测试
是什么导致这些值发生变化?
浏览器模式不会更改。(除非您在开发工具中更改)。它是在向web服务器发出请求之前设置的
文档模式可以根据web服务器响应进行更改。它可以通过与X-UA兼容的HTTP响应头、文档类型、元标记、内部网站、标记问题等进行更改。在IE开发工具->仿真(选项卡)的左上角有一个小按钮,上面写着“持久仿真设置” 见: “设置持久性和重置
将向仿真工具添加一个持久仿真设置图标。这将保持当前的仿真设置,直到专门禁用为止,从而允许您工作、关闭浏览器,并恢复仿真设置不变。其右侧是一个重置仿真设置图标,可快速将工具重置回默认值。“谢谢你的总结。这是我第一次看到这个图表。难怪我觉得我可能错过了一些东西。我还有更多的信息。我不太确定这个答案是否正确,因为它说“网页上定义了文档模式,告诉IE为了兼容性目的以不同的方式呈现网站”当它也可以在开发者工具中修改时(对于IE9和IE10,这是肯定的)。@AdrienBe他们在IE9.IE8的开发者工具中添加了更改文档模式的功能(这是问题的主题)在开发工具中没有文档模式切换。话虽如此,我将在底部添加一个脚注,因为这个问题仍然会从可能对IE9+感到好奇的人那里获得相当多的流量。也请看,所有这些文档模式的事情似乎毫无意义。例如,在开发工具中,我可以使用设置IE9的文档模式IE8的浏览器模式。为什么不让我们只修改浏览器模式?@AdrienBe在此之前,你发现IE中的很多东西都是有意义的吗?请对图表投赞成票。否则的话,要想弄清楚就太复杂了。