html - 为什么 IE9 在我的网站上切换到兼容模式?

标签 html css internet-explorer-9 compatibility-mode

我刚刚安装了 IE9 测试版,并且在我创建的特定网站 (HTML5) 上,IE9 会跳转到兼容模式,除非我手动告诉它不要这样做。我尝试删除网站的几个部分,但没有任何变化。包括删除所有 CSS 包含。在我的其他网站上,一切正常。

另外,不要手动设置,因为这样 IE9 会记住用户设置,并且您无法将其恢复为自动(或者至少我还没有找到方法,甚至没有通过隐私浏览和清空缓存)

无论如何。跳转到兼容模式的站点:http://alliancesatwar.com/guide/
它呈现正确的地方:http://geuze.name/basement/ (我不能发布超过 1 个超链接)

两者都使用相同的doctype。这些网站有很多共同点(除了外观)使用相同的基本模板(编码、元标记、文档类型和相同的 javascript)

如果有人能回答我,那就太好了!一个在 IE7 模式下呈现的 HTML5 网站是相当...蹩脚的。

最佳答案

对我来说在 IE9 文档模式下工作。

如果没有 X-UA-Compatible header /元来设置显式 documentMode,您将获得基于以下的模式:

  • 用户之前是否点击过该域中的“兼容性 View ”按钮;
  • 这也可能是由于网站上的某些其他内容导致 IE8/9 的渲染器崩溃并回退到旧的渲染器而自动发生的;
  • 用户是否选择默认将所有网站置于兼容性 View 中;
  • IE 是否认为该站点在您的 Intranet 上,因此默认为兼容性 View ;
  • 相关网站是否在 Microsoft 自己的需要兼容性 View 的网站列表中。

您可以从 IE 菜单的“工具 -> 兼容性 View 设置”中更改这些设置。当然这个菜单现在被偷偷地隐藏了,所以在你按下 Alt 之前你不会看到它。

作为网站作者,如果您确信自己的网站符合标准(在其他浏览器中呈现良好,并使用功能嗅探来决定使用哪些浏览器变通方法),我建议您使用:

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

或 HTTP header :

X-UA-Compatible: IE=Edge

无论使用什么 IE 版本,都可以获取最新的渲染器。

关于html - 为什么 IE9 在我的网站上切换到兼容模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3726357/

相关文章:

javascript - Safari 上的 margin-bottom 问题

javascript - 如何在页面中心对齐输入标签或任何其他 HTML 标签?

css - GruntJS:Autoprefixer 循环遍历所有 CSS 文件

css - 有史以来最奇怪的 IE9 错误(关闭互联网,搞砸页面渲染)

css - 过滤器和背景图像在一起

html - 如何将所选选项颜色与禁用选项分开设置样式

html - 如何在 import.io 连接提取中包含 CSS

selenium-webdriver - 使用 selenium 2.29 和 IEDriverServer.exe 在 IE 8 和 IE 9 上运行的测试真的很慢

javascript - 以正确的方式使用 z-index

javascript - Bootstrap 导航栏占用了两行