我有这个 <head>:

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

它将强制IE的最新渲染模式,但是兼容模式被认为是最后一个模式吗?

我的意思是:例如:将此代码与IE8一起使用,它将迫使它使用IE8或IE8兼容模式?

有帮助吗?

解决方案

该标签将试图强制浏览器使用浏览器支持的最新渲染模式。它不会触发兼容模式。

请注意,该标签必须是头部的第一个标签,否则标签将不起作用。如果可能的话,这一事实会使用HTTP标头使用HTTP标头中的顺序无关紧要。

如果浏览器使用标头或元标记时,浏览器静止图像最终处于兼容模式,则可能是原因:

  • 您缺少理智的医生
  • 浏览器已设置为始终使用兼容模式
  • 该站点托管在“ Intranet站点”上,并设置了Intranet站点的默认设置

更改浏览器兼容性视图设置

Microsoft认为至少192.168.xx在“ Intranet站点”上。 IE8/IE9中Intranet站点的默认值是使用兼容模式。对于许多业务应用程序来说,这是一个巨大的问题,因为程序员即使使用此元标记也无法覆盖此选项。 (“兼容视图中的显示Intranet站点”并不是Meta标签或HTTP标头的效果 - 在这种情况下,浏览器完全控制了兼容性视图)

Compatibility View Settings

始终添加此META标签或HTTP标头?

使用此元标记的另一个好处是,从浏览器的地址栏中删除了“兼容视图”图标。至少您的用户无法使用该按钮决定渲染模式。

其他提示

即使您没有选中“在兼容性视图中显示Intranet站点”选项,并且在响应标题中具有X-UA兼容的选项,您的浏览器可能会默认为“兼容性视图”,无论如何是您的组策略。查看您的控制台以获取以下消息:

HTML1203:XXX.XXX已配置为通过组策略在兼容性视图中运行。

其中xxx.xxx是您网站的域(即test.com)。如果您看到了这一点,则设置了域的组策略,以便在test.com中结束的任何站点都将在兼容模式下自动渲染,而不管医生,标题和标题等等。

有关更多信息,请参阅以下链接(说明HTML代码): http://msdn.microsoft.com/en-us/library/ie/hh180764(v=vs.85).aspx

我不是专家,而是通过反复试验:

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

解决了我的问题。我在网站和WebApps上使用了它,它阻止了IE8进入兼容模式,并在IE10和IE11中以“标准”显示。

使用 Edge 仅关键字?我的意思是,如果您希望IE使用最新的渲染引擎,那么只需放下整个元标记即可。

否则,它应该看起来像这样(这会使IE8的行为像IE7和IE9一样,并且更新会照常工作):

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7, IE=Edge" />
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top