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

How can I force IE to *not* use compatibility mode?

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

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

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

这是还是强制用户使用最新浏览器的方式运行?

这是针对 public 站点的,我们的用户经常使用 IE10、IE9、IE7 和 IE8(大致按此顺序)。
是的,IE7 的使用比 IE8 更普遍。

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

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

如果有人知道 Windows 10 将如何处理这一行,那将非常有用(新浏览器称为 "Edge")。

感谢您提供的任何帮助。

-克里斯·C.

P.S。 我确实将以下内容作为页面的第一行(无空格):

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

"http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">

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

您提供的是 x-ua-compat header/meta-tag。它被设计为一种保留解决方案,可帮助您继续前进并采用对现代浏览器的支持,而无需立即处理代码库的现代化。它并不是 Web 兼容性的长期解决方案。

为您的用户提供最理想体验的最佳方式是首先使用 HTML5 文档类型:

<!DOCTYPE html>

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

仅当您拥有无法立即 replace/remove 的遗留代码时才使用 x-ua-compat header/meta-tag。在这些情况下,允许将您的用户置于遗留文档模式:

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

如果存在该模式,以上内容会将浏览器置于 Internet Explorer 9 的边缘模式。 Internet Explorer 9之前的版本将使用最新的文档模式。

你也可以把这些叠起来表示好感:

<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 一样解释您的文档。