Định nghĩa và sử dụng
- ":nth-of-type(n)" chọn thành phần thứ "n", gốc tính được tính từ thành phần đầu tiên trở đi.
- Thứ tự "n" được tính cho tất cả các thành phần cùng cấp.
- Giá trị "n" có thể là số, keyword hay công thức.
Cấu trúc
:nth-of-type(n) { property: value; }
Ví dụ
HTML viết:
<html> <head></head> <body> <p>Thành phần độc lập thứ nhất</p> <p>Thành phần độc lập thứ 2</p> <p>Thành phần độc lập thứ 3</p> <p>Thành phần độc lập thứ 4</p> <p>Thành phần độc lập thứ 5</p> <p>Thành phần độc lập thứ 6</p> <div> <p>Thành phần thứ nhất</p> <p>Thành phần thứ 2</p> <p>Thành phần thứ 3</p> <p>Thành phần thứ 4</p> <p>Thành phần thứ 5</p> <p>Thành phần thứ 6</p> </div> <div> <h4>Thành phần thứ nhất</h4> <div>Thành phần thứ 2</div> <p>Thành phần thứ 3</p> <p>Thành phần thứ 4</p> <p>Thành phần thứ 5</p> <p>Thành phần thứ 6</p> </div> <div> <h4>Thành phần thứ nhất</h4> <ul> <li>ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2</li> <li>ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2</li> </ul> <p>Thành phần thứ 3</p> <p>Thành phần thứ 4</p> <p>Thành phần thứ 5</p> <p>Thành phần thứ 6</p> </div> </body> </html>
Hiển thị trình duyệt khi chưa có CSS:
Thành phần độc lập thứ nhất
Thành phần độc lập thứ 2
Thành phần độc lập thứ 3
Thành phần độc lập thứ 4
Thành phần độc lập thứ 5
Thành phần độc lập thứ 6
Thành phần thứ nhất
Thành phần thứ 2
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
Thành phần thứ nhất
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
Thành phần thứ nhất
- ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2
- ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
CSS viết:
p:nth-of-type(3){ color: blue; }
Hiển thị trình duyệt khi đã có css:
Thành phần độc lập thứ nhất
Thành phần độc lập thứ 2
Thành phần độc lập thứ 3
Thành phần độc lập thứ 4
Thành phần độc lập thứ 5
Thành phần độc lập thứ 6
Thành phần thứ nhất
Thành phần thứ 2
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
Thành phần thứ nhất
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
Thành phần thứ nhất
- ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2
- ul cùng cấp với p, nên tất cả li bên trong đều được coi là thành phần thứ 2
Thành phần thứ 3
Thành phần thứ 4
Thành phần thứ 5
Thành phần thứ 6
Ta thấy những thành phần <p> ở vị trí thứ 3 đều đã được chọn.
Trình duyệt hỗ trợ
":nth-of-type(n)" được hỗ trợ trong đa số các trình duyệt, ngoài trừ trình duyệt Internet Explorer 8 trở xuống.