2011-01-10 4 views
2

아래 HTML 목록에서 외부 목록의 LI에만 배경 이미지를 추가해야합니다. 내부 UL 목록을 CSS의 외부 UL 목록에서 상속받지 않도록 만드는 방법

HTML 코드는 (클래스와 하나 "메뉴 MLID-594의 DHTML 메뉴 시작 붕괴 확장 된"일명) :

<li class="menu-mlid-594 dhtml-menu expanded start-collapsed "> 
    About the Collection 
    <ul class="menu"> 
     <li class="leaf first dhtml-menu ">By Theme</li> 
     <li class="leaf last dhtml-menu ">By Individual</li> 
    </ul> 
</li> 

내가 어떻게 할 수 있습니까?

감사합니다.

답변

1

종류가 리튬 요소에 적용되지만 일반적으로 당신 '합니다 일반적으로 계단식 규칙에 의존해야 할 것이다 : 나는 당신이 참조 할 수있는 가장 바깥 쪽 UL에 ID 또는 클래스가 있다고 여기 가정입니다

#outerULIdentifier li { 
    background-image: url('someImage.jpg'); 
} 
#outerULIdentifier li li { 
    background-image: none; 
} 

. 이 후자의 버전 (아주 잘 CSS 선택기에서 하나의 요소에 여러 클래스를 지원하지 않습니다) IE 6에 문제가있을 수도 있지만

li.dhtml-menu { 
    background-image: url('someImage.jpg'); 
} 
li.dhtml-menu.leaf { 
    background-image: none; 
} 

: 또는 당신이 뭔가를 할 수 있습니다.

+0

당신은 _li.dhtml-menu .leaf_를 의미하는 것 같아요. – Flack

+0

그래, IE 6 문제를 해결하면 좋겠다. Dur, 나 똑똑해. –

+0

Duh, 인용 된 일부 코드가 누락되었습니다. 여전히 부모 규칙으로 대체하는 것을 선호합니다. – Flack

3
li.menu-mlid-594 { your css rules here } 

위는 너무 작은 문맥 정보와 함께 작동합니다 무슨 말을하는 하드의 클래스 메뉴 MLID-594

+0

감사합니다. 그러나 나는 이런 많은 LI 요소를 가지고 있고 다른 클래스 (menu-mlid-xxx)를 가지고 있기 때문에 이런 식으로 할 수 없습니다. 나는 모든 LI 요소들에 대해 같은 다른 클래스들에 대해 작업해야한다. –

+0

음, CSS 규칙을 추가 할 수 없습니까? – Adrian

+0

기술적으로, 할 수 있습니다. 그러나 나는 그것을하지 않는 것을 선호합니다. 자동으로 Drupal에 의해 생성 된 메뉴 트리입니다. CSS 규칙을 추가하거나 HTML 코드를 변경하려면 기본 함수를 덮어 쓰는 함수를 작성해야합니다. 고맙습니다. –

0
ul li {background:#F00;} /* First level */ 
ul li li {background:#FFF;} /* Second level */