2010-06-24 8 views
5

HTML 요소에 스타일을 지정하고 싶습니다. 그러나 태그에 내용이 일부 설정된 경우에만 스타일을 할당하고 싶습니다.CSS 선택기는 <tag>의 내용이있는 경우에만 작동합니다.</tag>

순수 CSS를 사용하면 가능합니까? 이상적으로 나는 HTML 자체의 구조에 대한 JS 또는 서버 측 변경을 피하고 싶습니다.

+0

가능한 복제 [내용 인식 CSS - 콘텐츠를 사용할 수있는 경우에만 스타일을 적용 (http://stackoverflow.com/questions/9063446/content-aware-css-apply-style-only-if-content -is-available) – user

답변

9

CSS3은 :empty pseudo -class입니다.

순수한 CSS2.1에서이 작업을 수행 할 방법이 없습니다.

+0

호환성 표 : http://www.quirksmode.org/css/contents.html –

+0

빈 실습 클래스가 존재한다는 것을 깨닫지 못했습니다 ... 좋은 것 :-) +1 –

8

:empty 가상 클래스를 결합하여 CSS3에서이를 수행 할 수 있습니다. 두 가지를 모두 지원하지 않는 브라우저의 경우 JS 또는 서버 측 솔루션을 사용해야합니다.

div:not(:empty) { background-color:blue; } 
관련 문제