不同的css,即,不工作

时间:2014-03-24 15:51:28

标签: css internet-explorer

我试过一个非常简单的代码,不知道为什么它不起作用,可能是一个小错误但我放弃了,所以请帮助

我的ie版本是8。

这是我的代码

         <!DOCTYPE html>
         <head>

         <!--[if gte IE 8]>
<link type="text/css" rel="stylesheet" href="ie.css" />
            <![endif]-->

          </head>
       <body>

          <div class="u">
            xyz 
          </div>

        <style scoped>

           .u{
      background:red;

     }

     </style>

         </body>
         </html>

ie.css

           .u{background:green;}

3 个答案:

答案 0 :(得分:3)

这里的问题是你要重新宣布你的CSS。

在上面的代码中,您指定:

For ie: set background green.
For all: set background red.

将你的ie css放在通用css下面,以使它优先。

答案 1 :(得分:0)

你应该这样做:

<!--[if lte IE 8]>
    <link rel="stylesheet" type="text/css" href="ie.css" />
<![endif]-->

答案 2 :(得分:0)

您可能需要将!important属性应用于您的覆盖类定义,如下所示:

 .u{background:green!important;}

这将强制它优先于普通版本。一个更好的解决方案可能是使它更具体,以便在存在时使用它(当在IE9 +中查看时):

body div.u{background:green;}