2017-01-11 1 views
1

첫 번째 테이블에서 <em> 요소를 선택하고 싶습니다. 두 번째는 선택하지 않습니다. CSS 선택기가 있습니까?"완전 랩핑 된"유일한 자식 셀렉터

CLARIFY : 나는 em가 완전히 p로 감싸 인 경우에만 <em><p> 내부에서 <p> 안에 선택하고 싶습니다. 즉 <p><em> 만 있으면됩니다.

지난 번에 <p> 요소 내부에있는 What do you think aboutthing? 섹션을 무엇이라고 부를지 모르겠습니다. 엄밀히 말하면 형제가 아니기 때문에 형제가 아닙니다.

나는 혼자 CSS에서 그렇게하고 싶다.

table + p > em:only-child { 
    color: red; 
} 

Demo here on JSFiddle

+0

내가없는 모습이 생각하십시오 :

<table> <td>blah</td> </table> <p><em>My name is legend</em></p> <table> <td>blah</td> </table> <p>What do you think about <em>this</em> thing?</p> 

은 지금까지있어,하지만이 너무 광범위하고 모두 선택 것입니다 가능한 순수한 CSS. 그러나 'span'과 같은 인라인 요소에서'em'의 앞뒤에 텍스트를 감싸는 경우 셀렉터가 정상적으로 작동합니다. –

+0

아니요 ... HTML 마크 업 변경 없이는 불가능합니다. 텍스트 노드는 CSS에 의해 "탐지 가능"하지 않습니다. JS가 필요합니다. –

답변

-2

table:first-of-type + p > em:only-child { 
    color: red; 
} 
+0

구조와 관련하여 테이블 순서에 대해서는별로 신경 쓰지 않습니다. 즉 : p로 감싸 이는 유일한 요소 인 경우 em을 선택하려고합니다. 질문을 jsfiddle에 대한 링크로 업데이트했습니다. –