Chỉ chọn css con thứ hai

Một điều thú vị mà chúng ta có thể làm với bộ chọn con thứ n là chọn mọi phần tử x. Vì vậy, giả sử, chẳng hạn chúng ta muốn mọi phần tử thứ tư

li:nth-child(4n) {
  color: purple;
}

Bây giờ mọi phần tử con thứ 4 được chọn

nth-child every 4th

Hoặc nếu chúng tôi muốn bao gồm mục đầu tiên

li:nth-child(4n + 1) {
  color: purple;
}

Kết quả

nth-child every 4th from 1

Ví dụ, chúng ta cũng có thể bắt đầu từ phần tử thứ hai

li:nth-child(4n + 2) {
  color: purple;
}

Kết quả

nth-child every 4th from 2

Chúng tôi thậm chí có thể sử dụng bộ chọn để chọn mọi thẻ trừ ba phần tử đầu tiên

li:nth-child(n + 4) {
  color: teal;
}

Kết quả

nth-child everything but first three

Một điều thú vị khác mà chúng ta có thể làm là chỉ chọn số lượng x đầu tiên. Hãy lấy ba mục đầu tiên

li:nth-child(-n + 3) {
  color: teal;
}

Kết quả

css nth-child first three

Chúng ta thậm chí có thể chọn phần tử cuối cùng

li:last-child {
  color: orange;
}

Kết quả

css nth last-child selector

Chúng tôi cũng có thể bù đắp để có được mục danh sách thứ hai đến cuối cùng

li:nth-child(3) {
  color: green;
}
0

Kết quả

nth-last-child second to last

Bộ chọn kết hợp liên kết cố định

Chúng ta cũng có thể kết hợp các bộ chọn con thứ n

Giả sử bạn muốn lấy mọi số chẵn từ một số lượng trong danh sách lẻ

li:nth-child(3) {
  color: green;
}
1
li:nth-child(3) {
  color: green;
}
2

Điều này sẽ nhận được tất cả các thẻ

li:nth-child(3) {
  color: green;
}
3 lẻ và sau đó là tất cả các thẻ
li:nth-child(3) {
  color: green;
}
4 chẵn

Kết quả

nth-child double selector

Chơi thử với Codepen này. Hãy thử và thay đổi một số bộ chọn để xem điều gì sẽ xảy ra

Xem thông tin cơ bản về bộ chọn con thứ n CSS của Chris Bongers (@rebelchris) trên CodePen

Bộ chọn con thứ n có hỗ trợ tuyệt vời và có thể được sử dụng trong hầu hết các trình duyệt. Đừng ngần ngại sử dụng chúng

nth-child browser support

Cảm ơn bạn đã đọc và hãy kết nối. liên kết cố định

Cảm ơn bạn đã đọc blog của tôi. Vui lòng đăng ký nhận bản tin email của tôi và kết nối trên Facebook hoặc Twitter

mục lục. Chỉ số của từng đứa trẻ để khớp, bắt đầu bằng

li:nth-child(4n + 2) {
  color: purple;
}
2, chuỗi
li:nth-child(4n + 2) {
  color: purple;
}
3 hoặc
li:nth-child(4n + 2) {
  color: purple;
}
4 hoặc một phương trình ( ví dụ:.
li:nth-child(4n + 2) {
  color: purple;
}
5,
li:nth-child(4n + 2) {
  color: purple;
}
6 )

Vì việc triển khai bộ chọn

li:nth-child(4n + 2) {
  color: purple;
}
7 của jQuery hoàn toàn bắt nguồn từ đặc tả CSS, nên giá trị của
li:nth-child(4n + 2) {
  color: purple;
}
8 là "1-lập chỉ mục", nghĩa là việc đếm bắt đầu từ 1. Các phương thức jQuery như
li:nth-child(4n + 2) {
  color: purple;
}
9 hoặc
li:nth-child(4n + 1) {
  color: purple;
}
10 jQuery tuân theo cách đếm "0-indexed" của JavaScript. Đưa ra một
li:nth-child(4n + 1) {
  color: purple;
}
11 duy nhất chứa hai
li:nth-child(4n + 1) {
  color: purple;
}
12,
li:nth-child(4n + 1) {
  color: purple;
}
13 chọn
li:nth-child(4n + 1) {
  color: purple;
}
12 đầu tiên trong khi
li:nth-child(4n + 1) {
  color: purple;
}
15 chọn thứ hai

Lớp giả

li:nth-child(4n + 1) {
  color: purple;
}
16 dễ bị nhầm lẫn với lệnh gọi
li:nth-child(4n + 1) {
  color: purple;
}
17, mặc dù cả hai có thể dẫn đến các phần tử phù hợp khác nhau đáng kể. Với
li:nth-child(4n + 1) {
  color: purple;
}
16, tất cả phần tử con đều được tính, bất kể chúng là gì và phần tử được chỉ định chỉ được chọn nếu nó khớp với bộ chọn được gắn vào lớp giả. Với lệnh gọi
li:nth-child(4n + 1) {
  color: purple;
}
17, chỉ bộ chọn được gắn với lớp giả được tính, không giới hạn ở phần tử con của bất kỳ phần tử nào khác và phần tử thứ (n+1) (n dựa trên 0) được chọn

Thảo luận thêm về cách sử dụng bất thường này có thể được tìm thấy trong đặc tả CSS của W3C

ví dụ

Tìm li thứ hai trong mỗi ul phù hợp và lưu ý nó

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

li:nth-child(4n + 2) {
  color: purple;
}
1

Thử nghiệm

Đây là một sân chơi để xem cách bộ chọn hoạt động với các chuỗi khác nhau. Lưu ý rằng điều này khác với

li:nth-child(4n + 2) {
  color: purple;
}
3 và
li:nth-child(4n + 2) {
  color: purple;
}
4 không quan tâm đến cha mẹ và chỉ lọc danh sách các phần tử cho từng phần tử khác. Các. nth-child, tuy nhiên, đếm chỉ số của đứa trẻ cho cha mẹ cụ thể của nó. Trong mọi trường hợp, nó dễ nhìn hơn là giải thích như vậy