如何使用CSS仅选择前三个元素

Bar*_*wan -3 html css css-selectors css3

我怎么可以只选择前三个要素:nth-child() 选择

section > figure:nth-child( ? ) {
  /* ... */
}
Run Code Online (Sandbox Code Playgroud)
<section>
  <figure>1</figure> <!-- select this -->
  <figure>2</figure> <!-- and this -->
  <figure>3</figure> <!-- and this -->
  <figure>4</figure>
  <figure>5</figure>
  <figure>6</figure>
</section>
Run Code Online (Sandbox Code Playgroud)

VXp*_*VXp 9

你可以这样做:

section > figure:nth-child(-n+3) {
  border: 1px solid;
}
Run Code Online (Sandbox Code Playgroud)
<section>
  <figure>1</figure>
  <figure>2</figure>
  <figure>3</figure>
  <figure>4</figure>
  <figure>5</figure>
  <figure>6</figure>
</section>
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢这个解决方案。对于我们当中好奇的人,我研究了它的工作原理 - 这是一个返回 3、2 和 1 的简单公式:-0+3 = 3、-1+3 = 2、-2+3 = 1。 (3认同)