๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์›น(IT) ์ •๋ณด/css

CSS3 nth-child ์š”์†Œ ๊ฐœ๋ณ„์ ์šฉ

by ๋‹ˆ๋ชจ๋„ค 2017. 8. 7.
๋ฐ˜์‘ํ˜•


์ •๋ ฌ๋œ ์š”์†Œ์˜ css์—์„œ ๊ฐœ๋ณ„ ์ •์˜๊ฐ€ ๊ฐ€๋Šฅํ•œ nth-child ์ž…๋‹ˆ๋‹ค.

ํŠน์ • ์ˆœ์„œ์— ๋”ฐ๋ฅธ ์ •์˜๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ํ†ตํ•˜์—ฌ ๊ฐ ์š”์†Œ๋งˆ๋‹ค ๊ฐœ๋ณ„์ ์œผ๋กœ ์ •์˜๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.


1. nth-child(์ˆซ์ž)๋กœ ์ˆœ์„œ ์ •์˜๋ฅผ ๋‚ด๋ฆฝ๋‹ˆ๋‹ค.

html

<ul>
    <li>nth-child(1)</li>
    <li>nth-child(2)</li>
    <li>nth-child(3)</li>
    <li>nth-child(4)</li>
    <li>nth-child(5)</li>
</ul>


css

li:nth-child(1) {background:#FFF}
li:nth-child(2) {background:#F00}
li:nth-child(3) {background:#00F}
li:nth-child(4) {background:#FF0}
li:nth-child(5) {background:#0F0}


  • nth-child(1)
  • nth-child(2)
  • nth-child(3)
  • nth-child(4)
  • nth-child(5)

์œ„์™€ ๊ฐ™์ด ๊ฐœ๋ณ„ li ์š”์†Œ๋งˆ๋‹ค css๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



2. nth-child(odd,even)๋กœ ์ˆœ์„œ ์ •์˜๋ฅผ ๋‚ด๋ฆฝ๋‹ˆ๋‹ค.

css

li:nth-child(odd) {background:#FF0}
li:nth-child(even) {background:#0F0}


  • ์˜ˆ์ œํ…์ŠคํŠธ
  • ์˜ˆ์ œํ…์ŠคํŠธ
  • ์˜ˆ์ œํ…์ŠคํŠธ
  • ์˜ˆ์ œํ…์ŠคํŠธ
  • ์˜ˆ์ œํ…์ŠคํŠธ

odd๋Š” ํ™€์ˆ˜, even์€ ์ง์ˆ˜ ์ˆœ์œผ๋กœ ์ •์˜๋ฅผ ๋‚ด๋ ค ๋ฆฌ์ŠคํŠธ ์ˆœ์œผ๋กœ ํ•ด๋‹น css๋ฅผ ์ž…ํ˜€์ค๋‹ˆ๋‹ค.


3. nth-child(?n+?)๋กœ ์ˆœ์„œ ์ •์˜๋ฅผ ๋‚ด๋ฆฝ๋‹ˆ๋‹ค.

๋ฐฐ์—ด์„ ์‚ฌ์šฉํ• ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. 4๊ฐœ์˜ ์ด๋ฏธ์ง€ ๋ชฉ๋ก์—์„œ 4๋ฒˆ์งธ์˜ css์— ํ•ด๋‹น css๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

html

<ul>
    <li>์ด๋ฏธ์ง€</li>
    <li>์ด๋ฏธ์ง€</li>
    <li>์ด๋ฏธ์ง€</li>
    <li>์ด๋ฏธ์ง€</li>
</ul>


css

li {width:24%; height:140px; margin-right:1.333%; background:#F63; float:left}
li:nth-child(4n+4) {margin-right:0;}


  • img
  • img
  • img
  • Img

๊ฐค๋Ÿฌ๋ฆฌ ๊ฒŒ์‹œํŒ ์‚ฌ์šฉ์‹œ ๊ฐ ๋งˆ์ง„์˜ ๊ฐ„๊ฒฉ์„ ๋„ฃ๋‹ค๊ฐ€ ๋ณด๋ฉด ์ œ์ผ ๋๋ถ€๋ถ„ ์ด๋ฏธ์ง€๊ฐ€ ์•„๋ž˜๋กœ ๋–จ์–ด์ง€๊ฑฐ๋‚˜ ๋”ฑ ๋งž์ถ”์—ˆ๋‹ค๊ณ  ํ•ด๋„ ๋ ˆ์ด์•„์›ƒ์— ๋”ฑ ๋งž์ง€ ์•Š๋Š” ๋งˆ์ง„์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ nth-child(4n+4)๋ฅผ ํ†ตํ•˜์—ฌ ํ•ด๋‹น ๋งˆ์ง€๋ง‰ li์˜ ๋งˆ์ง„์„ ์ œ๊ฑฐํ•˜์—ฌ ๋ ˆ์ด์•„์›ƒ์— ์ •ํ™•ํžˆ ๋งž์ถœ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

(4n+?)๋ฅผ ์ž˜ ์‚ฌ์šฉํ•˜๋ฉด ํŠน์ • ๋ถ€๋ถ„์— css๋ฅผ ์ž…ํž ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณดํ†ต db์—์„œ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๊ฒŒ์‹œ๋ฌผ๋“ค์„ ๋”ฐ๋กœ class๋ฅผ ์ค„ ์ˆ˜ ์—†๊ธฐ์— ์ด ์†์„ฑ์€ ๊ต‰์žฅํžˆ ์ค‘์š”ํ•œ ์š”์†Œ๊ฐ€ ๋  ์ˆ˜๋ฐ–์— ์—†์Šต๋‹ˆ๋‹ค.


nth-child ์™ธ์— ์ฒซ๋ฒˆ์งธ๋‚˜ ๋งˆ์ง€๋ง‰์—๋งŒ ์‚ฌ์šฉํ•˜๋ ค๋ฉด first-child, last-child ๋งŒ ์‚ฌ์šฉํ•˜์…”๋„ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์ ์šฉ์ด ๋ฉ๋‹ˆ๋‹ค.

first-child๋Š” ์ฒซ๋ฒˆ์งธ ์‹œ์ž‘ํ•˜๋Š” ํ•ด๋‹น ์š”์†Œ์— ์ ์šฉ.

last-child๋Š” ๋งˆ์ง€๋ง‰ ํ•ด๋‹น ์š”์†Œ์— ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด์™€๊ฐ™์€ CSS๋กœ ๊ฐ ์š”์†Œ๋“ค์— class๋ฅผ ์ ์šฉํ•˜๋Š” ์ผ์ด ์—†๋„๋ก ํ•ฉ์‹œ๋‹ค.

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€