CSS:仅为具有ul内部的li设置样式

时间:2012-08-08 14:40:59

标签: css html-lists

我有一个带有一些列表项(li)的无序列表(ul)。其中一个内部有另一个无序列表(ul)。现在,我想在所有这些样式表中使用相同的样式表,除了里面有另一个无序列表的li。

<ul>
    <li>Element</li>
    <li>Another Element</li>
    <li>Special Element
        <ul>
            <li>Child</li>
            <li>Child</li>
        </ul>
    </li>
</ul>

如何在不设置特殊li的特定类的情况下设置CSS?

3 个答案:

答案 0 :(得分:4)

ul ul li { your-rules: here; }

我建议您阅读本文,它将帮助您了解级联和特异性:http://reference.sitepoint.com/css/inheritancecascade

- 编辑 -

很抱歉,您意识到要为li设置样式,而不是内部ul li

li:nth-child(3) { your-rules: here; }

注意:如果有三个或更多,这将影响您的内部li

阅读http://css-tricks.com/how-nth-child-works/以了解我建议您使用的规则。

答案 1 :(得分:2)

在当前的CSS规范中,这是不可能的。 “包含某些特定内容的元素”没有选择器。它可能在CSS4中,但截至目前,你将不得不采取特殊措施来挑出“特殊”的li。

<ul>
    <li>Element</li>
    <li>Another Element</li>
    <li class="specialelement">Special Element
        <ul>
            <li>Child</li>
            <li>Child</li>
        </ul>
    </li>
</ul>

并为课程.specialelement提供自己的风格。

答案 2 :(得分:0)

尝试

ul li > li {
   some style
}