CSS选择器-不在直接父项下

CSS选择器-不在直接父项下,css,less,Css,Less,我有一个嵌套显示,我正在尝试设置除第一个嵌套集合之外的所有嵌套集合的样式 <div class="container"> <div class="main-collection"> <div class="collection"> <!-- lots of code --> <div class="collection"></div>

我有一个嵌套显示,我正在尝试设置除第一个嵌套集合之外的所有嵌套集合的样式

<div class="container">

    <div class="main-collection">
        <div class="collection">

            <!-- lots of code -->
            <div class="collection"></div>

            <!-- lots of code -->
            <div class="collection"></div>

            <!-- lots of code -->
            <div class="collection">

                <!-- lots of code -->
                <div class="collection"></div>

                <!-- lots of code -->
                <div class="collection"></div>

            </div>
        </div>
    </div>

</div>

我想要所有的,除了直接在主收藏下的那一个


我正在使用
less

尝试在较少的css中使用
less

.main-collection{
   >.collection{
    // here style
     >.collection{
        // here style
           >.collection{
              // here style
           }
       }
  }
}

用较少的css尝试此

.main-collection{
   >.collection{
    // here style
     >.collection{
        // here style
           >.collection{
              // here style
           }
       }
  }
}

最明显的方法是使用,尽管对旧浏览器的支持有限。如果您可以控制标记,您是否考虑过使用类来标识要采用不同样式的元素,尤其是?

最明显的方法是使用,尽管对旧浏览器的支持有限。如果您可以控制标记,您是否考虑过使用类来标识要采用不同样式的元素,尤其是

.main-collection > .collection .collection {
    /* your styles here */
} 

选择所有
.collection
元素,这些元素是
的后代。collection
元素本身是
的直接后代(
)。main collection


选择所有
.collection
元素,这些元素是
的后代。collection
元素本身是
的直接后代(
)。主集合首先对所有元素执行css,然后在下面只选择第一个元素并对其执行样式。下面的css覆盖了上面的其他内容。你可以用
:第n个孩子(1)
,或者我猜
:第一个孩子
,或者甚至可能是
:第一个类型
:第n个类型(1)


首先对所有元素执行css,然后在下面只选择第一个元素并对其执行样式。下面的css覆盖了上面的其他内容。你可以用
:第n个孩子(1)
,或者我猜
:第一个孩子
,或者甚至可能是
:第一个类型
:第n个类型(1)


:first
选择器具有更好的支持。更改所有
.collection
元素,然后将第一个元素更改回原来的元素。
:first
选择器具有更好的支持。更改所有
.collection
元素,然后将第一个元素更改回原来的元素。如果更改HTML,则会更简单。在这种情况下,我只需删除外部的
。如果您更改了HTML,则会更简单。在这种情况下,我只需删除外部