您好我现在一直在寻找一种方法让IE完全忽略页面中的自定义兼容性元标记,因为它会导致我们客户的某些机器出现问题但不足以让我的开发团队更改元标记使用边缘。
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
有没有人知道如何让IE11覆盖这些标签,以便我可以在运行该问题的机器上配置修复程序?一旦我在IE开发工具中切换文档模式以使用“边缘”而不是IE8,问题就解决了,但是当他们关闭浏览器并重新打开页面后再次返回页面时,默认返回到IE8。
我在这里研究了Will the IE9 WebBrowser Control Support all of IE9's features, including SVG?
的可能性但我进行了测试,似乎无法忽略页面<head>
中的自定义元标记。
答案 0 :(得分:1)
按照设计,页面中指定的x-ua-compatible
标头为considered canonical。也就是说,无论其他更改/设置如何,页面都有最后一个单词。
但是,在您的情况下,您可以通过添加HTML5文档类型(“<DOCTYPE html>
)作为页面的第一行来更改内容。您现有的x-ua-compatible
说(基本上)“依赖于DOCTYPE来弄清楚如何呈现页面。”
如果您现在没有获得“边缘模式”,则可能是您没有使用DOCTYPE(默认情况下会触发怪癖模式),或者您正在使用triggers quirks mode by default的DOCTYPE。
此外,如果您的网页是通过Intranet部署的,您可能需要考虑在从Internet区域打开它们的页面中添加“Mark of the Web”(MOTW)。 (默认情况下,IE打开Intranet pages in Compatibility View,即模拟IE7模式。)
希望这会有所帮助......
- Lance