728x90

css에서 nth-child는 다음과 같이 쓰인다.

 

/* 첫번째 item에 styling할 때 */ 
.item:first-child{
	color: #FFFFFF; 
}

/* 두번째 item에 styling할 때 */  
.item:nth-child(2){
	color: #0066FF; 
}

/* 마지막 item에 styling할 때 */
.item:last-child{
	color: #000000; 
}

 

nth-child의 child라는 말 때문에, item 클래스의 자식요소에 styling하라는 뜻인가? 싶을 수 있지만, 여기서 child의 의미는 item 부모 요소의 child를 의미한다. 

 

부모 요소의 child~ 이런 식으로 기억하는 것이 더 헷갈릴 수 있으므로, nth-child가 나오면 선택자와 같은 level에 있는 것 중 몇 번째인지를 확인해보는 게 가장 좋다. 

 

.curriculum .row:nth-child(2){
    margin-bottom: 48px;
} 

 

위의 코드는, curriculum 클래스의 자식인 row 클래스와 같은 level에 있는 요소 중에서 2번째의 margin-bottom을 48px로 해달라는 뜻이다.

 

한 가지 예시를 더 보자. 아래와 같은 html 코드가 있을 때, 짝수 번 list item에는 color를 red로, 홀수 번 list item에는 color를 yellow로 주고 싶을 때는 어떻게 할 수 있을까?

 

<ol>
	<li>A</li>
	<li>B</li>
	<li>C</li>
	<li>D</li>
	<li>E</li>
	<li>F</li>
</ol>

 

같은 level에 있는 li 요소 중, 짝수 번은 color를 #FF4949로, 

같은 level에 있는 li 요소 중, 홀수 번은 color를 #FFC82C로 준다는 뜻이 되는 것이다.

li:nth-child(2n){
	color: #FF4949;
}

li:nth-child(2n-1){
	color: #FFC82C;
}
728x90

+ Recent posts