如果一个网页以
开头,有什么区别<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
如果页面以
开头<!DOCTYPE html>
<html>
<head>
<!-- without X-UA-Compatible meta -->
如果没有区别,我想我可以忽略X-UA-Compatible
元标题,因为我只想在所有IE版本中以大多数标准模式呈现它。
答案 0 :(得分:1572)
答案 1 :(得分:57)
不同之处在于,如果您只指定DOCTYPE
,则IE的兼容性视图设置优先。默认情况下,无论DOCTYPE
如何,这些设置都会强制所有Intranet站点进入兼容性视图。还有一个复选框,可以为所有网站使用兼容性视图,无论DOCTYPE
。
X-UA-Compatible
会覆盖兼容性视图设置,因此无论浏览器设置如何,页面都将以标准模式呈现。这迫使标准模式:
DOCTYPE
不能这样做;无论DOCTYPE
如何,您都将在这些情况下以兼容性视图模式之一结束。
如果同时指定了meta
标记和HTTP标头,则meta
标记优先。
此答案基于检查IE8,IE9和IE10中决定文档模式的完整规则。请注意,查看DOCTYPE
是决定文档模式的最后一个回退。
答案 2 :(得分:24)
使用此命令强制IE隐藏地址栏中恼人的浏览器兼容性按钮:
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
答案 3 :(得分:22)
由于我无法在标记的答案中添加评论,我将在此处发布。
除了正确的答案,您确实可以通过验证。由于此元标记仅针对IE,因此您需要做的是添加IE条件。
<!--[if IE]>
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<![endif]-->
这样做就像添加任何其他IE条件语句一样,只适用于IE,不会影响其他浏览器。
答案 4 :(得分:13)
我认为微软的这张图解释了所有。为了告诉IE如何呈现内容,!DOCTYPE必须使用X-UA兼容的元标记。 !DOCTYPE本身对更改IE文档模式没有影响。
http://ie.microsoft.com/testdrive/ieblog/2010/Mar/02_HowIE8DeterminesDocumentMode_3.png
答案 5 :(得分:11)
为了完整起见,您实际上不必将其添加到HTML(在HTML5中是未知的http-equiv)
执行此操作,永不回头( apache 的第一个示例, nginx 的第二个示例)
Header set X-UA-Compatible "IE=Edge,chrome=1"
add_header X-UA-Compatible "IE=Edge,chrome=1";
答案 6 :(得分:7)
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
要使此行按预期工作,请确保:
<head>
<html>
元素否则某些IE版本会忽略它。
<强>更新强>
这两条规则已经过简化,但很容易记住和验证。尽管MSDN文档声明您可以在此之前添加标题和其他元标记,但我不建议这样做。
How make it work with conditional comments.
Interesting article about the order of elements in the head.(blogs.msdn.com,IE)
<强>参考强>
X-UA-Compatible
[...]必须出现在网页的标题中(HEAD部分) 除了title元素和其他元元素之外的所有其他元素。
答案 7 :(得分:6)
只需一句话就可以说指示Internet Explorer使用其最新的渲染引擎
{{1}}
答案 8 :(得分:4)
如果您在与IE服务器相同的网络中使用您的网站,那么尽管有DOCTYPE,IE仍然会切换到兼容模式。
添加meta http-equiv="X-UA-Compatible" content="IE=Edge"
会停用这种不受欢迎的行为。
答案 9 :(得分:3)
这是LITERALLY 1 google query away,但这里是:
http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx
了解旧版文档模式
使用以下值以边缘模式显示网页,即 Internet Explorer支持的最高标准模式 Internet Explorer 6到IE11。
<meta http-equiv="x-ua-compatible" content="IE=edge"
注意这在功能上等同于使用HTML5 doctype。它将Internet Explorer置于支持的最高级别 文件模式。 Edge最常用于定期维护 经常测试互操作性的网站 多个浏览器,包括Internet Explorer。
注意强> 从IE11开始,边缘模式被认为是首选的文档模式。 (在早期版本中,它被认为是实验性的。) 要了解更多信息,请参阅不建议使用文档模式。从...开始 Windows Internet Explorer 8,一些Web开发人员使用边缘模式 meta元素隐藏地址栏上的兼容性视图按钮。 从IE11开始,由于删除了按钮,因此不再需要这样做 从地址栏。因为它强制打开所有页面 标准模式,无论您使用的是Internet Explorer的版本 可能很想对使用Internet查看的所有页面使用边缘模式 资源管理器。不要这样做,因为只有X-UA兼容的标题 从Internet Explorer 8开始支持。
提示强> 如果希望所有受支持的Internet Explorer版本以标准模式打开页面,请使用HTML5文档类型声明,如前面的示例所示。
搜索结果中还包括:
答案 10 :(得分:1)
2.1.3.5 X-UA兼容性元标记和HTTP响应标题
此功能不会在任何版本的Microsoft Edge中实现。
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" />
请参阅https://msdn.microsoft.com/en-us/library/ff955275(v=vs.85).aspx
是的,我知道我迟到了,但我刚刚遇到了一些问题和讨论,最后我的老板让我删除X-UA-Compatible
标签删除所有我工作过的文件上。
如果此信息已过期或不再相关,请更正我。