Không, không thực sự. Có một vài công cụ chọn có thể giúp bạn gần gũi hơn, nhưng có lẽ sẽ không hoạt động trong ví dụ của bạn và không có khả năng tương thích trình duyệt tốt nhất.
:only-child
Đây :only-child
là một trong số ít các bộ chọn đếm thực sự theo nghĩa là nó chỉ được áp dụng khi có một phần tử con của phần tử. Sử dụng ví dụ lý tưởng hóa của bạn, nó hoạt động như children(1)
có thể sẽ.
:nth-child
Công :nth-child
cụ chọn thực sự có thể đưa bạn đến nơi bạn muốn đến tùy thuộc vào những gì bạn thực sự muốn làm. Nếu bạn muốn tạo kiểu cho tất cả các yếu tố nếu có 8 đứa trẻ, bạn sẽ không gặp may. Tuy nhiên, nếu bạn muốn áp dụng kiểu cho các phần tử thứ 8 trở đi, hãy thử điều này:
p:nth-child( n + 8 ){
/* add styles to make it pretty */
}
Thật không may, đây có lẽ không phải là giải pháp bạn đang tìm kiếm. Cuối cùng, có lẽ bạn sẽ cần sử dụng một số thuật sĩ Javascript để áp dụng các kiểu dựa trên số đếm - ngay cả khi bạn đã sử dụng một trong số các kiểu này, bạn cần phải xem xét kỹ khả năng tương thích của trình duyệt trước khi sử dụng thuần túy Giải pháp CSS.
W3 CSS3 Spec trên các lớp giả
EDIT Tôi đọc câu hỏi của bạn một chút khác nhau - có một vài cách khác để tạo kiểu cho cha mẹ , không phải cho trẻ em. Hãy để tôi ném một vài bộ chọn khác theo cách của bạn:
:empty
và :not
Phong cách này yếu tố không có con. Bản thân nó không hữu ích, nhưng khi được ghép nối với :not
bộ chọn, bạn chỉ có thể tạo kiểu cho các thành phần có con:
div:not(:empty) {
/* We know it has stuff in it! */
}
Bạn không thể đếm được có bao nhiêu trẻ em có sẵn CSS thuần túy ở đây, nhưng đây là một công cụ chọn thú vị khác cho phép bạn làm những điều tuyệt vời.