2

我有一些从几个来源拼凑而成的 CSS,但我的问题非常基本。

在这个 jsfiddle 中:http: //jsfiddle.net/Ekbsb/1/ 为什么外部 div 的 UL CSS 优先于“下游”div 的 UL 规则?

再具体一点:

#bodytopPan ul{margin:0px 0px 0px 25px; padding:0px;}

正在覆盖此代码:

.ILdropdown  ul{
    left: 0;
    margin: 5px 0;
}

即使.ILdropdown ul在 HTML 中被置于“较低”位置。这不是与它应该如何工作相反吗?

我的目标是body ul用这个特定实例的代码替换代码。

谢谢。

4

3 回答 3

3

CSS id (#) 优先于类 (.)

重写如下:

#bodytopPan ul{margin:0px 0px 0px 25px; padding:0px;}

#bodytopPan .ILdropdown  ul{
    left: 0;
    margin: 5px 0;
}
于 2012-08-02T21:28:55.183 回答
2

bodytopPan 是一个 id,它比 .ILdropdown 更具体,它是一个类。特异性越高,越强调声明。

于 2012-08-02T21:29:01.330 回答
0

这与 HTML 中的顺序无关,而与 CSS 中的顺序有关。

编辑:如果你想具体一点(即只影响“body”中的主要、第一个 ul 而没有其他,你可以这样做body > ul只会针对无序列表,其中的无序列表是 body 的直接子级。显然你可能不会有这种情况,更像是,body > div > div > ul但它可以让您更具体地确定您想要定位的 UL(如果它没有类)

于 2012-08-02T21:27:59.053 回答