3

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

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

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

4

3 回答 3

4

ul ul li { your-rules: here; }

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

- 编辑 -

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

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

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

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

于 2012-08-08T14:41:36.020 回答
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自己的风格。

于 2012-08-08T14:47:54.487 回答
0

尝试

ul li > li {
   some style
}
于 2012-08-08T14:53:17.340 回答