如何处理 HTML5 中未验证的元元素?
在 HTML5 中,某些元元素尚未验证(还?),例如:
<meta http-equiv="x-ua-compatible" content="ie=emulateie7;chrome=1">
<meta http-equiv="imagetoolbar" content="no">
条件注释是否是适当的解决方案。元元素仍然会按预期工作吗?
<!--[if IE]><meta http-equiv="x-ua-compatible" content="ie=emulateie7;chrome=1"><![endif]-->
<!--[if lt IE 7]><meta http-equiv="imagetoolbar" content="no"><![endif]-->
使用 .htaccess 文件而不是元元素(不幸的是并不总是可能),这是正确的方法吗?
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
# BrowserMatch MSIE ie OR?
BrowserMatch MSIE emulate_ie7
# Header set X-UA-Compatible "IE=EmulateIE7" env=ie OR?
Header set X-UA-Compatible "IE=EmulateIE7" env=emulate_ie7
BrowserMatch chromeframe gcf
Header append X-UA-Compatible "chrome=1" env=gcf
</IfModule>
</IfModule>
谢谢!
In HTML5, some meta elements do not validate (yet?) like:
<meta http-equiv="x-ua-compatible" content="ie=emulateie7;chrome=1">
<meta http-equiv="imagetoolbar" content="no">
Are Conditional Comments an appropriate solution here resp. will meta elements still work as expected?
<!--[if IE]><meta http-equiv="x-ua-compatible" content="ie=emulateie7;chrome=1"><![endif]-->
<!--[if lt IE 7]><meta http-equiv="imagetoolbar" content="no"><![endif]-->
Using a .htaccess file instead of meta elements (not always possible unfortunately), would this be the right way to go?
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
# BrowserMatch MSIE ie OR?
BrowserMatch MSIE emulate_ie7
# Header set X-UA-Compatible "IE=EmulateIE7" env=ie OR?
Header set X-UA-Compatible "IE=EmulateIE7" env=emulate_ie7
BrowserMatch chromeframe gcf
Header append X-UA-Compatible "chrome=1" env=gcf
</IfModule>
</IfModule>
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
就我个人而言,对于“x-ua-兼容”标签,我选择了 .htaccess 指令。我遵循 html5boilerplate 模板:
Personally for the "x-ua-compatible" tag, i went for the .htaccess directive. I followed the html5boilerplate template:
您可以注册其他pragma指令:
然后,一致性检查员需要识别它们:
但这可能是一项艰苦的工作,不知道之前是否有任何原因没有列出这些标头,但我想如果您尝试一下,您就会发现:)
根据 MS 文档,根据您使用的 Apache 版本,可能会有一些变化,但最好的检查方法可能是尝试一下。
You can register additional pragma directives:
Conformance checkers are then required to recognise them:
That may be hard work though, don't know if there's any reason why these headers haven't been listed before but I guess you'll find out if you try it :)
Your .htaccess looks OK according to the MS docs, there may be some variations depending on what version of Apache you're on, but probably the best way to check is to try it and see.