如何强制IE *不*使用兼容模式?

时间:2015-06-01 22:05:43

标签: html5 internet-explorer internet-explorer-10

我已经仔细查看了stackoverflow,发现以下是强制非兼容模式的最佳推荐方法:

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

我对这些答案的问题是它们都是IE 8&amp; 9时代的答案。

这种仍然强制使用用户正在运行的最新浏览器吗?

这是针对公共网站的,我们的用户经常使用IE10,IE9,IE7和IE8(大致按此顺序)。
是的,IE7的使用比IE8更常见。

我对IE8的唯一限制是网站可读。

这是一个现代化的网站,我希望用户所拥有的任何浏览器都不能处于兼容模式。我知道有一种方法可以指定浏览器版本,但我不想在下个月底使用Win10做到这一点。

如果有人知道Windows 10将使用哪一行知道非常有用(新浏览器称为“Edge”)。

感谢您提供的任何帮助。

-Chris C。

P.S。 我确实有以下作为页面的第一行(没有空格):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"

http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd” &GT;

1 个答案:

答案 0 :(得分:12)

我在Internet Explorer和Microsoft Edge团队工作。

您提供的是 x-ua-compat 标头/元标记。它被设计为一种保留式解决方案,可帮助您继续前进并采用对现代浏览器的支持,而无需立即负责现代化您的代码库。它不是网络兼容性的长期解决方案。

为用户提供最理想体验的最佳方式是首先使用HTML5 doctype:

<!DOCTYPE html>

这应该是你文件中的第一件事;什么都不应该在它之前。从那时起,单独使用有效标记。检查您的文档是否有错误,不平衡标记,还原标记等。请记住,valid your markup定期。

只有在您无法立即替换/删除的旧代码时才使用x-ua-compat header/meta-tag。在这些情况下,允许您的用户处于遗留文档模式:

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

如果该模式存在,以上将使浏览器进入Internet Explorer 9的边缘模式。在9之前的Internet Explorer版本中,将使用最新的文档模式。

你也可以叠加这些以表示赞成:

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

但请不要忘记我的主要信息 - 上述内容仅作为临时解决方案。最终目标是使用现代代码更新您的文档。

Microsoft Edge,Internet Explorer的继任者,does not support document modes。 Microsoft Edge将解释您的文档,如Firefox和Chrome。

相关问题