<!--[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)。
因此,jQuery和Modernizr给出了各自的方法。