요소의 CSS 스타일을 정의 할 수 있습니까? 일치하는 요소에 특정 요소 (직접 하위 항목)가 포함 된 경우에만 적용됩니까?
나는 이것이 예제를 사용하여 가장 잘 설명된다고 생각합니다.
참고 : 포함 된 자식 요소에 따라 부모 요소의 스타일을 지정 하려고합니다 .
<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>
참고 2 : 자바 스크립트를 사용 하여이 작업을 수행 할 수 있다는 것을 알고 있지만 알 수없는 CSS 기능을 사용하여 이것이 가능한지 궁금합니다.
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; }
이상적인 세계에서 이것은 포함 된 자식 ol
수에 따라 종속 의 여백을 증가 li
시켜 왼쪽의 여백이 너비만큼만 넓게됩니다. 있어야했다.