CSS选择器仅在另一个元素内部选择元素

时间:2012-08-08 11:21:00

标签: css css-selectors

我对CSS选择器有疑问。如果<div>位于具有班级名称<ul>的{​​{1}}内,我该如何选择具有特定班级名称的saft?这个CSS类在别处使用,我不想在任何地方改变样式。

<div id="floater">
    <ul class="saft">
        <li><div class="textSlide"></li>
    </ul>
</div>

3 个答案:

答案 0 :(得分:41)

只需使用父元素和后代元素之间的CSS后代选择器(空格):

ul.saft div.textSlide {
    /* CSS rules */
}

JS Fiddle demo

在这种情况下,适用于div类的textSlide的规则仅适用于其祖先是类ul的{​​{1}}的情况。相反,你可以使用直接子组合子saft,但是你必须指定与每个父/祖先相关的>,直到需要它的类,这可能是难以维护CSS(不是在这种情况下,但随着时间的推移,它可能会成为问题)。

答案 1 :(得分:4)

只是做:

ul.saft .textSlide {

这可以实现您的需求

答案 2 :(得分:0)

你可以轻松选择一个具有特定类名的div,只有当它在一个具有类名saft的UL里面时,如下所述css: -

ul.saft .textSlide {
color:red;
}

或观看演示: - http://tinkerbin.com/mcrh7iMq