2010-06-24 37 views
5

Tôi muốn chỉ định kiểu cho một phần tử HTML - nhưng chỉ trong trường hợp thẻ có một số nội dung được đặt.Bộ chọn CSS chỉ hoạt động nếu <tag> có nội dung</tag>

Điều này có thể sử dụng CSS thuần túy không? Lý tưởng nhất là tôi muốn tránh JS hoặc các thay đổi phía máy chủ đối với cấu trúc của chính HTML.

+0

Bản sao có thể có của [CSS nhận biết nội dung - chỉ áp dụng kiểu nếu nội dung có sẵn] (http://stackoverflow.com/questions/9063446/content-aware-css-apply-style-only-if-content -is-available) – user

Trả lời

9

CSS3 có :empty pseudo -class.

Tôi không thể thấy bất kỳ cách nào để thực hiện điều này trong CSS2.1 thuần túy.

+0

Bảng tương thích: http://www.quirksmode.org/css/contents.html –

+0

Đã không nhận ra: lớp giả rỗng đã tồn tại ... đẹp nhất :-) +1 –

8

Bạn có thể làm điều này với CSS3 bằng cách kết hợp các lớp học giả :not:empty giả. Đối với các trình duyệt không hỗ trợ cả hai, bạn sẽ cần sử dụng JS hoặc giải pháp phía máy chủ.

div:not(:empty) { background-color:blue; } 
Các vấn đề liên quan