有没有办法在CSS文件中"if IE"?

leo*_*ora 8 css internet-explorer conditional-comments

我知道如果您在Internet Explorer中,可以将条件语句加载到不同的CSS文件中,但是您可以在CSS文件中执行此操作吗?

我有一种情况,我希望正确的边距为20,如果它是Internet Explorer,但如果是任何其他浏览器,则为10.

Joh*_*her 14

处理此问题的最简单方法是使用HTML中的条件,在页面的其余部分放置一个具有特定ID的div.

<!--[If IE 8]>
<div id="IE8">
<![endif]-->
  .
  .
  .
<!--[If IE 8]>
</div>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

然后,你的CSS可以这样做:

#IE8 div.whatever { ... }
Run Code Online (Sandbox Code Playgroud)

这种方式使得所有这些CSS黑客都不必要.

  • 这是一个很好的技巧,但当你想为不同的IE版本(如IE6和IE7)构建异常时,它可能会使你的HTML有点乱. (2认同)