HTML 条件注释判断浏览器及检验HTML5

<!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]-->
<!--[if IE]> 所有的IE可识别 <![endif]-->
<!--[if IE 6]> 仅IE6可识别 <![endif]-->
<!--[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]-->
<!--[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]-->
<!--[if IE 7]> 仅IE7可识别 <![endif]-->
<!--[if lt IE 7]> IE7以及IE7以下版本可识别 <![endif]-->
<!--[if gte IE 7]> IE7以及IE7以上版本可识别 <![endif]-->
<!--[if IE 8]> 仅IE8可识别 <![endif]-->
<!--[if IE 9]> 仅IE9可识别 <![endif]-->

lte:就是Less than or equal to的简写,也就是小于或等于的意思。

lt :就是Less than的简写,也就是小于的意思。

gte:就是Greater than or equal to的简写,也就是大于或等于的意思。

gt :就是Greater than的简写,也就是大于的意思。

! :就是不等于的意思,跟javascript里的不等于判断符相同

Example:

加载CSS2
<!--[if lt IE 9]>
加载CSS1(可以把要重写的写在这里).
<![endif]-->
<!--[if lt IE 9]>
加载CSS1
<!--[else]>
加载CSS2
<![endif]-->
在IE10后,微软说不支持条件注释了,换句话说他也只能判断到IE9了、

如果想确定是不是能使用HTML5,光靠这个还是不严谨,虽然可以通过:

<!--[if lte IE 6]>我是版本号大于5小于等于6的IE!<![endif]-->
<!--[if IE 7]>我是IE 7!<![endif]-->
<!--[if IE 8]>我是IE 8!<![endif]-->
<!--[if IE 9]>我是IE 9!<![endif]-->
<!--[if gte IE 10]>你看不到我!<![endif]-->
<!--[if !(IE)]><!-->我是IE10或非IE浏览器!<!--<![endif]-->
<!--[if !IE]><!-->我是IE10或非IE浏览器!<!--<![endif]-->
<!--[if (gte IE 9)|!(IE)]><!-->ie9以上版本 或者 其它非IE浏览器!<!--<![endif]-->

这一方法来实现(理论上),实际上不是所有非IE浏览器都能支持HTML5(比如低版本的FF、Chrome)。

因此,jQueryModernizr给出了各自的方法。

参考文章:HTML5与IE条件注释判断语句 - 打开速度慢,可考虑翻墙

如果您觉得文章不错,可以通过赞助支持我

标签: 知识, 语法, html5

添加新评论