是否可以让scss选择器仅在类是其他元素的最后一个子元素时选择该类?

是否可以让scss选择器仅在类是其他元素的最后一个子元素时选择该类?,css,sass,css-selectors,Css,Sass,Css Selectors,我有一个动态生成的布局,所以元素的顺序可以改变。作为此布局一部分的每个元素都有其自己的不同类。我希望能够选择某个类的元素,但前提是它是其父类应用样式的最后一个子元素。如果具有不同类的元素是其父元素的最后一个子元素,则不应选择该元素。有没有可能不使用javascript就拥有这种scss选择器并实现此功能 例如: <div class="parent"> <div class="child1">Hello!</div>

我有一个动态生成的布局,所以元素的顺序可以改变。作为此布局一部分的每个元素都有其自己的不同类。我希望能够选择某个类的元素,但前提是它是其父类应用样式的最后一个子元素。如果具有不同类的元素是其父元素的最后一个子元素,则不应选择该元素。有没有可能不使用javascript就拥有这种scss选择器并实现此功能

例如:

<div class="parent">
  <div class="child1">Hello!</div>
  <div class="child2">Hello!</div>
  <div class="child3">Hello!</div>
</div>

你好
你好
你好
我只想选择类为child3的元素,前提是它是类为parent的div的最后一个子元素。 因此,如果child2类元素是div类父元素的最后一个子元素,则不会选中它,例如:

<div class="parent">
  <div class="child1">Hello!</div>
  <div class="child3">Hello!</div>
  <div class="child2">Hello!</div>
</div>

你好
你好
你好

是的,这是CSS的正常行为。您可以这样做:

.parent .child3:last-child {}
.parent {
  .child3 {
    &:last-child {
      // Rules.
    }
  }
}
这是一条选择以下各项的规则:

  • .child3
    元素位于
    .parent
  • .child3
    元素是最后一个元素,之后没有其他元素包括文本
对于SCS,您可以执行以下操作:

.parent .child3:last-child {}
.parent {
  .child3 {
    &:last-child {
      // Rules.
    }
  }
}
示例片段

.parent.child3:最后一个孩子{
背景:#共因失效;
}
试用版1
你好
你好
你好

试用版2 你好 你好 你好
您可以根据元素的属性选择元素,这样就可以实现您的目标

.parent div{
宽度:50px;
高度:50px;
背景颜色:蓝色;
边框:实心1px黑色;
}
.parent div:type[class=“child3”的最后一个{
背景色:红色;
}

你好
你好
你好
你好
你好
你好

我猜OP已经询问过,如果具有不同类的元素是其父元素的最后一个子元素,则不应选择它。你的答案不适用于此。@PraveenKumarPurushothaman此答案与yours@TemaniAfifOHHH类型的
last是否只选择最后一个子项?这很有趣。让我查一查。是的,现在我完全搞不懂这个CSS是如何工作的!哈哈,等等。。。你真让我头痛@PraveenKumarPurushothaman它将选择具有特定类型的最后一个元素,因为我们只有div,那么是的,它将只选择最后一个child这很有趣。让我查一查。是的,现在我完全搞不懂这个CSS是如何工作的!哈哈,等等。。。你真让我头痛!