나는 아이와 후손 사이의 차이점을 잘 알고 있습니다. 그러나 자식 선택기에 문제가 있습니다. 아마도 나는 정확하게 뭔가를 이해하지 못하고 있습니다. 다음 HTML을 예로 들어 보겠습니다. 이것은 3 단계 탐색 메뉴입니다. CSS에서 CSS Child Selector
<div id="nav">
<ul class="menu">
<li><a href="#">Menu Item 1</a></li>
<li><a href="#">Menu Item 2</a>
<ul class="sub-menu">
<li><a href="#">Sub Menu Item 1</a></li>
<li><a href="#">Sub Menu Item 2</a>
<ul class="sub-menu">
<li><a href="#">Sub Sub Menu Item 1</a></li>
<li><a href="#">Sub Sub Menu Item 2</a></li>
<li><a href="#">Sub Sub Menu Item 3</a></li>
</ul>
</li>
<li><a href="#">Sub Menu Item 3</a></li>
</ul>
</li>
<li><a href="#">Menu Item 3</a></li>
</ul>
</div>
가 자녀에 대한 이해를 바탕으로 (>) 선택, 다음과 같은 사실이 될 것이다 :
#nav {}
#nav ul.menu {}
#nav ul.menu > li {} /* main navigation items only */
#nav ul.menu > li > ul.sub-menu li {} /* the 2nd tier only */
#nav ul.menu > li > ul.sub-menu ul.sub-menu {} /* the 3rd tier only */
이 그러나 사건이 될 것 같습니다하지 않습니다. 두 번째 계층의 CSS는 세 번째 계층에도 적용됩니다. 그리고 !important
선언으로 만 마지막 CSS 정의 내에서 두 번째 계층을 덮어 쓸 수 있습니다.
의미가 있습니까?
내 부분에 대한 작은 감독. 완벽하게 이해합니다. 감사! – Chris
@Chris 문제 없음 :). 적어도 당신은'>'자식 선택자를 사치스럽게 여깁니다 ... 여전히 IE6를 지원하는 사이트에서 계속 작업하고 있습니다. ( – Niklas