html - nth-of-type 选择具有特定类别的前 3 个元素

标签 html css css-selectors

如何选择类 .class-b 的前三或四个元素

<div class="wrapper">
  <div class="class-a">xxx</div>
  <div class="class-a">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-b">xxx</div>
  <div class="class-c">xxx</div>
  <div class="class-c">xxx</div>
  <div class="class-c">xxx</div>
</div>

div 的数量会有所不同。

最佳答案

nth-of-type 以类型标记(div、span、a...)为目标,它不能以具有特定类的 nth 元素为目标。您可以在 MDN 上阅读有关此选择器的更多信息.

如果您的元素并不总是与示例中的顺序相同,您将需要 JS:


JS 解决方案:

这是一个快速的 jQuery 片段,它选择了类 .class-b 的前 3 个元素,并向它们添加了 .selected 类。然后,您可以使用它来设置目标元素的样式。

DEMO

jQuery :

var child_num = 0;
$('.wrapper > .class-b').each(function(){
    if(child_num < 3){
        $(this).addClass('selected');
    }
    child_num++;
});

CSS:

.selected{
    background:gold;
}

关于html - nth-of-type 选择具有特定类别的前 3 个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23786542/

相关文章:

jquery - 不以邮件形式发送信息?

javascript - 从触发器导航到 ".hover"动画元素后,将其保留在屏幕上

html - CSS 类选择器不起作用

CSS Child 与后代选择器

html - CSS - 将 Font Awesome 图标与一段文本对齐

javascript - 使用 HTML、CSS 和/或 Javascript 的鱼骨列表的对 Angular 级联元素和 90° 边框(类似因果图)

css - 子 div 中的文本超出父级最大宽度

javascript - 想要调用一个文件中的函数,该函数的定义位于另一文件中

jquery - 如何在跨度中向宽度添加过渡

css - 为什么不定位 :sticky; work