我正在为一个在所有内部网站点上强制兼容模式的客户端工作。我想知道是否有一个标签,我可以把我的HTML强制兼容性模式关闭。


当前回答

如果您正在处理内部网专区中的页面,您可能会发现无论您做什么,IE9都会进入IE7 Compat模式。

这是由于IE兼容性设置中的设置,它说所有的Intranet站点都应该在兼容模式下运行。你可以通过组策略取消勾选(或者只是在IE中取消勾选),或者你可以设置如下:

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

这是可行的(详见其他答案),但最初可能不是这样的:它需要在样式表声明之前出现。如果你不这样做,它就会被忽略。

其他回答

如果您可以访问服务器,最可靠的方法是在服务器本身,在IIS中进行。进入IIS HTTP响应头。添加 名称:X-UA-Compatible 价值:IE =边缘 这将覆盖您的浏览器和代码。

这是由于IE兼容性设置中的设置,它说所有的Intranet站点都应该在兼容模式下运行。你可以通过组策略取消勾选(或者只是在IE中取消勾选),或者你可以设置如下:

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

显然,不可能改变兼容性视图设置作为组策略,但这是可以在注册表中更改的东西,这个元标签对我来说很好,我必须使所需的属性作为html表单的一部分工作,它在chrome和firefox中工作,但不是IE。

下面是浏览器对每个html 5元素的支持。

http://html5readiness.com/

注意一个共同点谷歌Chrome,它支持一切。希望这对你有所帮助

我相信这能达到目的:

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

IE8对外网默认为“标准模式”,内网默认为“怪异模式”。 如果将doctype设置为xhtml transitional,则忽略HTML元标记。 解决方案是在代码中添加HTTP报头。 这对我们很管用。 现在我们的内部网正在强制IE8以标准模式呈现应用程序。

添加到基页类的PageInit (ASP.net c#):

Response.AddHeader("X-UA-Compatible", "IE=EmulateIE8");

参考: http://ilia.ws/archives/196-IE8-X-UA-Compatible-Rant.html

插入 作为标签下的第一件物品。

这将迫使IE在IE的物理版本中呈现页面,并忽略浏览器的“模式设置”。这可以在开发人员工具中设置,尝试将其更改为旧版本的IE进行测试,这应该被忽略,页面应该看起来完全相同。