【问题标题】:IE8 automatically uses the "IE8 Compat View" browser mode and "IE7 Standards" document modeIE8 自动使用“IE8 Compat View”浏览器模式和“IE7 Standards”文档模式
【发布时间】:2012-12-01 06:18:32
【问题描述】:

我基于 HTML5 Boilerplate 构建了一个网站。除了将我的自定义代码添加到 HTML 中的正文部分之外,我没有更改样板文件中的任何内容。我将 IE8 定位为要支持的最低 IE 版本。

问题是当我在 IE8 上打开我的页面时,它会自动使用“IE8 Compat View”浏览器模式和“IE7 标准”文档模式,而不是同时使用 IE8 标准浏览器和文档模式。

任何人都知道为什么会发生这种情况以及如何强制它使用正确的模式而不需要用户更改 IE8 中的选项?

【问题讨论】:

标签: internet-explorer-8 html5boilerplate ie8-compatibility-mode ie8-browser-mode


【解决方案1】:

您可能正在本地网络上测试该站点。在这种情况下,IE8 将默认使用问题中描述的模式。对于来自本地网络或 Intranet 的站点,IE8 具有不同的默认行为。

如果您正在测试的页面托管在本地网络之外,那么 IE8 将使用正确的标准模式。

如果需要在本地测试网站,只需使用IE8的开发者工具切换到IE8标准浏览器模式即可。

【讨论】:

    【解决方案2】:
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    

    使用上述元标记强制 IE 使用它可用的最新渲染引擎。

    【讨论】:

    • 我试过了。它默认出现在 HTML5 Boilerplate 的 index.html 模板中。我自己做了一些研究和实验,得出了我在下面提到的结论。
    【解决方案3】:

    chocobanana 描述的行为也描述了here,请参阅条目“IE9 兼容性视图和 Intranet 站点”。

    如果您不想一直在开发人员工具中手动切换浏览器/文档模式,也不想包含 X-UA-Compatible-Tag,您可以通过以下方式撤消始终以兼容模式呈现 Intranet 站点的默认设置取消选中工具 > 兼容性视图设置中的相应复选框。

    我花了将近一天的时间才弄清楚为什么我的本地版本在一个 IE8 选项卡中看起来不错,而在另一个选项卡中相同页面的 Intranet 服务器版本在布局方面都搞砸了.. . *叹气*

    无论如何,这仅适用于您的机器,因此为了强制您的客户端不进入兼容模式,您必须设置相应的元标记。

    【讨论】:

      【解决方案4】:

      请检查以下事项:

      1) 使用“查看源代码”,请确保您正在使用

      <!DOCTYPE html>
      

      在您的页面顶部。

      2) 如果该行出现在顶部,请确保该行之前没有空格或换行符。我碰巧有些 PHP 在 ?> 之后有一个额外的新行,它会打印到屏幕上,导致 doctype 不会作为文档中的第一件事出现。

      【讨论】:

        猜你喜欢
        • 2011-02-05
        • 2011-02-26
        • 2012-08-22
        • 2012-04-29
        • 2012-06-12
        • 1970-01-01
        • 1970-01-01
        • 2013-09-15
        相关资源
        最近更新 更多