覆盖元兼容性 header 标签 Internet Explorer

Override meta compatibility header tags internet Explorer

你好,我一直在寻找一种方法让 IE 完全忽略页面中的自定义兼容性元标记,因为它会在我们的一些客户机器上引起问题,但对我的开发团队来说还不够更改元标记以使用边缘。

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

有谁知道让 IE11 覆盖这些标签的方法,这样我就可以在机器 运行 上配置修复程序来解决这个问题?一旦我在 IE Dev 工具中切换文档模式以使用 "edge" 而不是 IE8,问题就解决了,但是当他们在关闭浏览器和 re-opening 页面默认值后再次 return 到页面时回到 IE8.

我已经研究过这里的可能性 Will the IE9 WebBrowser Control Support all of IE9's features, including SVG?

但我测试过,忽略页面 <head> 中的自定义元标记似乎不起作用。

根据设计,页面中指定的 x-ua-compatible headers 是 considered canonical。即页面有硬道理,不管其他changes/settings.

但是,对于您的情况,您可以通过添加 HTML5 文档类型 ('<DOCTYPE html>) 作为页面的第一行来进行更改。您现有的 x-ua-compatible 表示(基本上)"rely on the DOCTYPE to figure out how to render the page."

如果您现在没有获得 "edge mode",则可能是您没有使用 DOCTYPE(默认情况下会触发怪癖模式)或者您使用的 DOCTYPE triggers quirks mode by default .

此外,如果您的页面部署在 Intranet 上,您可能需要考虑添加“Mark of the Web" (MOTW) to the page that opens them from the Internet Zone. (By default, IE opens Intranet pages in Compatibility View,也就是模拟 IE7 模式。)

希望这对您有所帮助...

-- 兰斯