2012-04-23 65 views
11
<ul> 
    <li> <span> apply </span> </li> 
    <li> <span> apply </span> </li> 
    <li> 
    <ul> 
     <li> <span> ignore </span> </li> 
     <li> <span> ignore </span> </li> 
    </ul> 
    </li> 
</ul> 

我怎么只能申请一个CSS规则跨越从第一级别的元素,并从嵌套列表中进行span元素无视规则?只在子元素将样式在第一级

这可以做到没有明确重置二级跨度的属性?

尝试ul > li span,但它似乎没有工作,我得到应用的样式到第二级太

+1

什么元素外'ul'的父母? – 2012-04-23 14:35:31

+0

这是一个div?为什么这很重要? – Alex 2012-04-23 14:37:42

+1

看到我的答案。您可以将其用作选择器的起点。 – 2012-04-23 14:38:12

回答

14

放进一个ID包裹DIV列表,例如<div id="ul-wrapper">,并尝试:

#ul-wrapper > ul > li > span { 
    /* my specific CSS */ 
} 
1
#container > ul > li span { /* - Your CSS Here - */ } 

需要指定一个容器,以便只能选择第一级ul。

0
ul > li > span {border:solid 1px red;} 
li > ul > li > span {border:none 1px red;}; 
+1

从问题:“这可以做到没有明确重置二级跨度的属性?” – 2012-04-23 14:40:56

1

只要外ul的父母是不是另一个li,您可以使用为出发点,为您的选择(例如假设它是一个div):

div > ul > li span { 
    /* Whatever */ 
}