我一直在调查问题,并在努力寻找新想法,所以我想我能看看是否有人可以提供帮助。

我有一个页面在Chrome和Firefox中显示正常。它在IE9中也可以正常显示,但是我们的一些客户必须使用兼容模式...并且在兼容模式下查看页面时,由于某种原因,它强制以IE7文档模式显示。

该页面的第一行包含!DOCTYPE HTML,并且:

meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1

我认为应该强制页面以最新文档模式显示。

当我在F12开发人员工具中浏览HTML时,html的第一行已被注释掉:
!-- DOCTYPE HTML --

任何人都可以建议我尝试解决此问题的任何方法,即强制页面以IE9文档模式显示吗?当我在开发人员工具中手动将文档模式更改为IE9时,页面显示良好-因此,我只需要了解为什么IE强制使用IE7文档模式而不使用默认模式即可。

任何帮助,非常感谢。

最佳答案

您可以看到我对类似问题的答案:X-UA-Compatible is set to IE=edge, but it still doesn't stop Compatibility Mode

如果用户在“兼容性 View ”设置对话框中切换了某些选项,例如“在兼容性 View 中显示Intranet站点”或“在兼容性 View 中显示所有站点”,则meta标记不会覆盖文档类型。对于您的某些客户,无论是他们的意图还是公司的政策。

要使其脱离兼容性 View ,您必须在托管服务器上而不是在提供的文件中设置X-UA-Compatible。对于.NET,通常会在web.config(IIS7)中进行设置,如下面的示例所示,或者将其添加到Web应用程序属性(IIS6)的“自定义Http header ”中。

<system.webServer>
  <httpProtocol>
    <customHeaders>
      <clear />
      <add name="X-UA-Compatible" value="IE=EmulateIE8" />
    </customHeaders>
  </httpProtocol>
</system.webServer>

关于internet-explorer - IE页面被强制进入IE7文档模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11012019/

10-17 01:13