有时候,我们在写CSS的时候想要让某些样式只在IE浏览器下生效,但是其他浏览器不生效。这时候可以使用IE的条件注释来达到这个效果。 / IE专用样式 / / 只对IE6生效的样式 / 上面这个例子表示...
有时候,我们在写CSS的时候想要让某些样式只在IE浏览器下生效,但是其他浏览器不生效。
这时候可以使用IE的条件注释来达到这个效果。
<!--[if IE]>
/* IE专用样式 */
<![endif]-->上面这段代码的意思是:如果浏览器是IE,则执行条件注释中的样式。
同时也可以设置特定版本的IE浏览器:
<!--[if IE 6]>
/* 只对IE6生效的样式 */
<![endif]-->上面这个例子表示只在IE6浏览器下生效。
注意,条件注释在IE10以后的版本已经不再支持,所以如果想要这个效果在IE10以上的浏览器中生效,需要使用hack方法。
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
/* IE10+专用样式 */
}上述代码的意思是:如果浏览器是IE10以上版本,则执行@media中的样式。
除了上述方法,还可以使用JavaScript来检测浏览器版本来设置样式,但是这种方法效率比较低,而且需要大量的代码。
总的来说,使用IE的条件注释是目前比较靠谱、简单的一种方法来让CSS只在IE浏览器中生效。