如果一个网页以
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
如果页面以开头
<!DOCTYPE html>
<html>
<head>
<!-- without X-UA-Compatible meta -->
如果没有区别,我想我可以忽略X-UA-兼容的元头,因为我只希望它在所有IE版本中以最标准的模式呈现。
如果一个网页以
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
如果页面以开头
<!DOCTYPE html>
<html>
<head>
<!-- without X-UA-Compatible meta -->
如果没有区别,我想我可以忽略X-UA-兼容的元头,因为我只希望它在所有IE版本中以最标准的模式呈现。
当前回答
只需一句话,即可指导Internet Explorer使用其最新的渲染引擎
<meta http-equiv="x-ua-compatible" content="ie=edge">
其他回答
由于我无法对标记的答案添加评论,我将在此处发布此内容。
除了正确的答案之外,您确实可以验证这个答案。因为这个元标记只针对IE,所以你只需要添加一个IE条件。
<!--[if IE]>
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<![endif]-->
这样做就像添加任何其他IE条件语句一样,只适用于IE,不会影响其他浏览器。
我认为这张来自微软的图表解释了一切。为了告诉IE如何呈现内容!DOCTYPE必须与X-UA-兼容的元标记一起使用!DOCTYPE本身对更改IE文档模式没有影响。
http://ie.microsoft.com/testdrive/ieblog/2010/Mar/02_HowIE8DeterminesDocumentMode_3.png
使用此选项可强制IE在地址栏中隐藏烦人的浏览器兼容性按钮:
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
要使这条线按预期工作,请确保:
它是<head>之后的第一个元素在元标记之前不使用条件注释,例如在<html>元素上
否则,某些IE版本会忽略它。
更新
这两条规则被简化了,但它们很容易记住和验证。尽管MSDN文档指出您可以将标题和其他元标记放在这个之前,但我不建议这样做。
如何使用条件注释。
关于头部元素顺序的有趣文章。(blogs.msdn.com,用于IE)
参考
从MSDN文档中:
X-UA-Compatible[…]必须出现在网页的标题中(HEAD部分)在除标题元素和其他元元素之外的所有其他元素之前。
不同之处在于,如果只指定DOCTYPE,IE的兼容性视图设置优先。默认情况下,这些设置强制所有intranet站点进入兼容性视图,而不管DOCTYPE如何。还有一个复选框可用于所有网站,无论DOCTYPE如何。
X-UA-Compatible覆盖兼容性视图设置,因此无论浏览器设置如何,页面都将以标准模式呈现。这将强制标准模式用于:
intranet页面当计算机管理员选择“在兼容性视图中显示所有网站”作为默认设置时,请考虑大公司、政府、大学当您无意中出现在Microsoft兼容性视图列表中时用户手动将您的网站添加到“兼容性视图设置”列表中的情况
仅DOCTYPE无法做到这一点;在这些情况下,无论DOCTYPE如何,您都将进入“兼容性视图”模式之一。
如果同时指定了元标记和HTTP标头,则元标记优先。
这个答案是基于检查IE8、IE9和IE10中决定文档模式的完整规则。注意,查看DOCTYPE是决定文档模式的最后一步。