2012-08-30 2 views
0

부모가 div.somename입니다. 저 div.somename 안에, 나는 background-color:green에 각각 div.subs의 2 명의 아이들이있다.하나의 하위 div를 제거하면 상위 div의 다른 하위 div는 배경색을 변경해야합니다.

내 질문에 div.sub 중 하나를 제거하면 다른 div.sub은 파란색으로 배경색을 변경해야합니다.

CSS로 가능합니까?

+0

당신이 jQuery를 사용하거나에만 CSS는 당신이 원하는 무엇을? – freebird

+0

나는 CSS만을 사용해야합니다 –

+2

어떻게 CSS로 아이 하나를 제거합니까? 그것은 저에게 새로운 것이고, 자바 스크립트가 필요할 때나 자바 스크립트를 사용할 때 자바 스크립트 당 다른 div의 CSS도 바꿀 수 있습니다. –

답변

1

체크 아웃이 솔루션 : jsFiddle

+2

형제 연결자를 잘 사용합니다. 그러나이 방법은 항상 첫 번째 상자를 제거하는 경우에만 작동합니다. 두 번째를 제거하면 작동하지 않습니다 – alf

+0

~ 표시는 무엇을 의미합니까? –

+0

'일반 형제 선택 도구'라고하며 지정된 요소의 형제 인 요소를 찾습니다. 불행히도 형제 자매를 따를뿐입니다. – Francis

3

당신은 CSS와 함께이 작업을 수행 할 수있는 only-child 의사 클래스 사용 :

div.somename > div.sub { 
    background-color: green; 
} 

div.somename > div.sub:only-child { 
    background-color: blue; 
} 
+0

좋은 생각이지만, IE <9는 불행히도 그것을 좋아하지 않을 것입니다. – Francis

+0

좋은 생각. 모든 브라우저에서 작동합니까? –

+0

@PavanKumar IE9 +, Firefox, Safari, Opera, Chrome. 어떤 브라우저를 타겟팅하고 있습니까? – alf

관련 문제