页面在IE7文档模式下打开,而不是IE9

时间:2013-04-03 18:25:49

标签: javascript internet-explorer-9 meta-tags ie8-browser-mode ie-developer-tools

我知道这个问题已经有很多变化,但到目前为止还没有我尝试过的解决方案。

我希望我的网络应用程序在IE中以IE9文档模式打开。当我现在打开页面时,它总是在“Internet Explorer7标准”中打开,而“Internet Explorer9标准”被列为页面默认值。 我尝试过tagss的几种变体,包括

<meta http-equiv="X-UA-Compatible" value="IE=Edge">

<meta http-equiv="X-UA-Compatible" content="IE=7,IE=9">

(两者都在头标记之后)

我也尝试过条件语句,例如来自S.O。的这个例子:

<!--[if IE 7 ]> <body class="ie7> <![endif]-->
<!--[if IE 8 ]> <body class="ie8> <![endif]-->
<!--[if gt IE 8]><!--><body><!--<![endif]-->

目前我正在使用:<!DOCTYPE html>

当然我可以在F12中手动切换模式,但我想在IE9文档模式下直接打开网站(兼容模式始终默认为IE9兼容模式)。

目前我正在开发一个Intranet开发服务器;我读过这可能是一个因素?但我真的更喜欢任何解决方案都是客户端,我可以添加到JS / HTML .....

4 个答案:

答案 0 :(得分:24)

手动覆盖文档模式的开发人员工具

如果将Internet Explorer 9标准列为“页面默认值”,则表示您可能已通过这些工具手动将其更改为Internet Explorer 7标准。只需将其切换回F12开发人员工具本身的Internet Explorer 9标准。

这些工具会记住您在另一种文档模式下显示页面的显式请求,因此不会恢复为页面默认值。请考虑MSDN中的以下内容:

  

首次加载网页时,F12工具会确定默认的文档模式并选择适当的模式。括号中的文字页面默认表示网页的默认模式。复选标记出现在文档的当前模式旁边。更改模式会导致网页刷新,并保持此模式,直到选择其他模式或关闭浏览器。

     

- Navigating the F12 Developer Tools Interface (强调原文)

如果您想确认此答案,请打开新的浏览器窗口并导航至http://stackoverflow.com。您应该在F12开发者工具中注意它加载的文档模式为&#34;标准&#34; (IE9标准,如果你在IE9中)。

将堆栈溢出的文档模式切换到IE7标准并刷新浏览器。刷新后,您会发现浏览器保持文档模式:Internet Explorer 7标准,并将Internet Explorer 9标准列为(页面默认值)。

enter image description here

兼容性视图设置

根据MSDN资源How Internet Explorer Chooses Between Document Modes,唯一的其他可能原因是兼容性视图设置。

在Internet Explorer 9中,单击“工具”,然后单击“兼容性视图设置”。您可以在那里找到Intranet站点的设置。在Internet Explorer 10(桌面模式)中,您可能必须按 Alt 才能显示“工具”菜单项。

enter image description here

答案 1 :(得分:5)

只需输入以下代码,您的IE浏览器默认会在定义的兼容视图中打开。

  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9"> 

您可以更改&#34; IE = EmulateIE9&#34; to&#34; IE = EmulateIE8&#34;如果你想让IE8成为默认的兼容性视图。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"> 

答案 2 :(得分:0)

我的案例中的问题是我的公司发行的笔记本电脑上已经应用了一项组策略,该笔记本显式设置了我在兼容模式下使用的域。我通过检查IE控制台(F12)找到了这个:

enter image description here

我在我的机器上运行以下命令验证了这一点,该命令在我的机器上生成了应用组策略的报告:

gpresult /h C:\gpresult.html

该报告有一个这样的部分,其中包括我正在处理的网站的根域:

enter image description here

答案 3 :(得分:-1)

您也可以输入以下代码示例。

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

这将以默认浏览器模式加载您的应用程序。特别要确保将此元标记包含在head标记之后的第一个标记中。其他明智的做法是行不通的。