从div中删除背景图像

时间:2011-03-22 12:58:27

标签: css

我有像这样的css声明

#first, #second, #third {
 font-size:1em;
 background: url('path/to/image') no-repeat;

}

接下来我想删除#third;

的背景

我试过了

#third {
background:none;
}

但它不起作用。

4 个答案:

答案 0 :(得分:2)

为什么不这样做?

#first, #second {
 font-size:1em;
 background: url('path/to/image') no-repeat;

}
#third {
font-size:1em;
}

答案 1 :(得分:2)

您的第一个选择器比第二个选择器更具体,因此它具有优先权。

要解决此问题,您可以通过将第二个选择器更改为#second #third来使第二个选择器具有同等特异性 如果不选择相同的元素,那么你的设计是有缺陷的;元素ID应该是唯一的。

或者,您可以将!important添加到第二个background规则,以强制它覆盖第一个。

答案 2 :(得分:1)

那么为什么不从第一个样式声明中删除第三个并单独创建

#third {
   font-size: 1em;
}

答案 3 :(得分:1)

它不起作用,因为#second #third#third更具体。您的意思是将#second#third组合在一起,还是忘记了逗号?

听起来这不是你想要的,所以这应该解决它:

#first, #second, #third {
    font-size:1em;
    background: url('path/to/image') no-repeat;
}

请注意逗号 - 这就是所需要的。此编辑也应正确设置#second元素的样式。

另外,你是否在另一组代码之后为#third放置了单独的声明?订单很重要,需要在宣布#first#second#third后提出。