[css] 다른 div 내에서 첫 번째 div를 선택하는 데 사용할 수있는 CSS 선택 도구
다음과 같은 것이 있습니다.
<div id="content>
<h1>Welcome to Motor City Deli!</h1>
<div style=" font-size: 1.2em; font-weight: bolder;">Sep 19, 2010</div>
<div > ... </div>
해당 div 내에서 날짜의 글꼴 색상을 설정할 수 있도록 두 번째 div ( “content”div 내의 첫 번째 div)에 대한 CSS 선택기는 무엇입니까?
답변
귀하의 질문에 대한 가장 정확한 답변은 …
#content > div:first-of-type { /* css */ }
이렇게하면 #content의 직계 자식 인 첫 번째 div에 CSS가 적용됩니다 (#content의 첫 번째 자식 요소 일 수도 있고 아닐 수도 있음).
다른 옵션 :
#content > div:nth-of-type(1) { /* css */ }
답변
원하는
#content div:first-child {
/*css*/
}
답변
H1이 항상 거기에 있다고 가정 할 수 있다면
div h1+div {...}
그러나 콘텐츠 div의 ID를 지정하는 것을 두려워하지 마십시오.
#content h1+div {...}
이는 jQuery와 같은 JavaScript 라이브러리에 의존하지 않고 지금 당장 크로스 브라우저를 얻을 수있는 것만 큼 좋습니다. h1 + div를 사용하면 H1 이후의 첫 번째 div 만 스타일을 얻습니다. 대안이 있지만 CSS3 선택기에 의존하므로 대부분의 IE 설치에서 작동하지 않습니다.
답변
당신이 찾고있는 것에 가장 가까운 것은 : first-child pseudoclass입니다 ; 당신은이 때문에 불행하게도이 귀하의 경우에는 작동하지 않습니다 <h1>
전과 <div>s
. 내가 제안하고 싶은 것은 <div>
, like에 클래스를 추가 한 <div class="first">
다음 그런 방식으로 스타일을 지정하거나 실제로 클래스를 추가 할 수없는 경우 jQuery를 사용하는 것입니다.
$('#content > div:first')