css子选择器

时间:2011-07-08 13:41:45

标签: css

我有这个清单:

   <ul class="topnav" id="topnav">
    <li><a href="#"><span>community</span> </a>
        <ul class="level1">
            <li><a href="#"><span>Commun1</span> </a>
                <ul class="level1">
                </ul>
            </li>
        </ul>
    </li>
    <li><a href="#"><span>Events</span></a>
        <ul class="level1">
            <li><a href="#"><span>Event1</span> </a>
                <ul class="level1">
                <li><a href="#"><span>Event2</span></a>
                <ul class="level1"></ul>
                </li>
                </ul>
            </li>
        </ul>
    </li> the the first ul under community and the first ul under Events
</ul>

我只需要访问第一个类别为level1的ul我在每个ul中只需访问

            .topnav li > ul 
             {
              //code here
             }

我已经更新了我的代码仍然无法访问唯一的fi

5 个答案:

答案 0 :(得分:0)

它对我有用:jsfiddle demo

ul.topnav li > ul {
   color:blue;
}

答案 1 :(得分:0)

试试这个:

#topnav li ul:first-child

来自here

答案 2 :(得分:0)

.topnav li > ul.level:first-child

将仅在li之后的第一级访问带有.level类的第一个ul。

答案 3 :(得分:0)

像这样使用:

#topnav li:first-child ul
{
    // your style
}

查看工作演示:http://jsfiddle.net/bqBdn/4/

注意:您的HTML代码有点儿错误,所以正如我在此演示中所做的那样纠正它。在主ul, lili使用正确的标记谢谢!

答案 4 :(得分:0)

这是因为你的HTML错了。您不能将<li />作为另一个<li />的孩子。浏览器正在纠正错误 - 将初始值下的所有<ul />置于同一级别。你的CSS工作正常,你的HTML就是问题所在。

你能改变这个吗?