Có thể xác định kiểu CSS cho một phần tử, chỉ được áp dụng nếu phần tử phù hợp chứa một phần tử cụ thể (dưới dạng mục con trực tiếp)?
Tôi nghĩ rằng điều này được giải thích tốt nhất bằng cách sử dụng một ví dụ.
Lưu ý : Tôi đang cố gắng tạo kiểu cho phần tử cha , tùy thuộc vào phần tử con nào chứa.
<style>
/* note this is invalid syntax. I'm using the non-existing
":containing" pseudo-class to show what I want to achieve. */
div:containing div.a { border: solid 3px red; }
div:containing div.b { border: solid 3px blue; }
</style>
<!-- the following div should have a red border because
if contains a div with class="a" -->
<div>
<div class="a"></div>
</div>
<!-- the following div should have a blue border -->
<div>
<div class="b"></div>
</div>
Lưu ý 2 : Tôi biết tôi có thể đạt được điều này bằng cách sử dụng javascript, nhưng tôi chỉ tự hỏi liệu điều này có khả thi khi sử dụng một số tính năng CSS không xác định (với tôi) không.
ol < li:nth-child(n+10) { margin-left: 2rem; } ol < li:nth-child(n+100) { margin-left: 3rem; } ol < li:nth-child(n+1000) { margin-left: 4rem; }
Trong một thế giới lý tưởng, điều này sẽ làm tăng biên độ ol
phụ thuộc vào số lượng li
trẻ em được chứa để lề bên trái chỉ rộng bằng nó cần thiết để được