2012-08-02 82 views
2

我有几个CSS,我已经从几个来源拼凑在一起,但我的问题是相当基本的。CSS层次结构 - div内的div

在这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代码。

谢谢。

回答

3

CSS IDS(#)优先于类(。)

重写如下:

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

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

谢谢,我从来不知道。 – Shackrock 2012-08-02 21:30:40

0

这不是关于HTML中的顺序,而是关于CSS中的顺序。

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

2

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

+0

谢谢,我从来不知道。 – Shackrock 2012-08-02 21:30:39

+4

您需要使用更大的字体。 – 2012-08-02 21:30:51