๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Stylesheet/CSS

[CSS3]CSS์˜ ํŠน์ง•: ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธ๋ถ€ํ„ฐ ์ƒ์†๊นŒ์ง€

by YJ Dev 2024. 5. 25.
728x90
๋ฐ˜์‘ํ˜•
SMALL

CSS๋Š” ์›น ํŽ˜์ด์ง€์˜ ๋””์ž์ธ๊ณผ ๋ ˆ์ด์•„์›ƒ์„ ์ •์˜ํ•˜๋Š” ์ค‘์š”ํ•œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” CSS์˜ ์ฃผ์š” ํŠน์ง•๋“ค์„ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

cssํŠน์ง•

๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธโœจ

CSS๋Š” HTML๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜์–ด ์›น ํŽ˜์ด์ง€์˜ ์‹œ๊ฐ์ ์ธ ๋””์ž์ธ์„ ๊พธ๋ฐ€ ๋•Œ ์ฃผ๋กœ ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค. ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ CSS๋ฅผ ์ด์šฉํ•˜์—ฌ ์š”์†Œ๋“ค์˜ ๋””์ž์ธ์„ ๋ Œ๋”๋ง ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์Šคํƒ€์ผ์€ ๊ฐ ๋ธŒ๋ผ์šฐ์ €๋งˆ๋‹ค ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์ด๋ฅผ ์žฌ์ •์˜ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•˜์—ฌ ์ž์‹ ๋งŒ์˜ ๋””์ž์ธ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธ๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์— ๋ฏธ๋ฆฌ ๋‚ด์žฅ๋˜์–ด ์žˆ์–ด, CSS๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ์ผ๋ฐ˜์ ์ธ HTML ์š”์†Œ๋“ค์ด ๋ฏธ๋ฆฌ ์ •์˜๋œ ์Šคํƒ€์ผ์„ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, <h1> ํƒœ๊ทธ๋Š” ๋ณดํ†ต ๊ตต์€ ๊ธ€์”จ์ฒด์™€ ํฐ ํฌ๊ธฐ๋กœ ํ‘œ์‹œ๋˜๋ฉฐ, <p> ํƒœ๊ทธ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹จ์ˆœํ•œ ํ…์ŠคํŠธ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธ๋Š” ๋ธŒ๋ผ์šฐ์ €๋งˆ๋‹ค ๋‹ค๋ฅด๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์ด๋ฅผ ๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ๋“ฑ์„ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, CSS๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์Šคํƒ€์ผ์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๋ฎ์–ด์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ ์šฉ ์šฐ์„ ์ˆœ์œ„์™€ ํŠน์ด์„ฑโญ

CSS ์Šคํƒ€์ผ์ด ์ ์šฉ๋˜๋Š” ์šฐ์„ ์ˆœ์œ„์™€ ์„ ํƒ์ž๋“ค ๊ฐ„์˜ ํŠน์ด์„ฑ์„ ๋น„๊ตํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. CSS์˜ ์šฐ์„ ์ˆœ์œ„ ๊ทœ์น™์„ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ์Šคํƒ€์ผ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•˜๊ณ  ์›ํ•˜๋Š” ๋””์ž์ธ์„ ์ •ํ™•ํžˆ ์ ์šฉํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

์šฐ์„ ์ˆœ์œ„ ๊ทœ์น™

CSS์—์„œ๋Š” ์—ฌ๋Ÿฌ ๊ทœ์น™์ด ๋™์ผํ•œ ์š”์†Œ์— ์ ์šฉ๋  ๊ฒฝ์šฐ, ์šฐ์„ ์ˆœ์œ„๋ฅผ ํ†ตํ•ด ์–ด๋–ค ๊ทœ์น™์ด ์ ์šฉ๋ ์ง€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์šฐ์„ ์ˆœ์œ„ ๊ทœ์น™์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์ธ๋ผ์ธ ์Šคํƒ€์ผ: HTML ์š”์†Œ์— ์ง์ ‘ ์ž‘์„ฑ๋œ ์Šคํƒ€์ผ (style ์†์„ฑ ์‚ฌ์šฉ) - ์šฐ์„ ์ˆœ์œ„ ๊ฐ€์žฅ ๋†’์Œ
  2. ์•„์ด๋”” ์„ ํƒ์ž: #id - ์ค‘๊ฐ„ ์šฐ์„ ์ˆœ์œ„
  3. ํด๋ž˜์Šค ์„ ํƒ์ž: .class - ๋น„๊ต์  ๋‚ฎ์€ ์šฐ์„ ์ˆœ์œ„
  4. ์š”์†Œ ์„ ํƒ์ž: element - ๋‚ฎ์€ ์šฐ์„ ์ˆœ์œ„ ์ค‘ ํ•˜๋‚˜
  5. ์™€์ผ๋“œ์นด๋“œ ์„ ํƒ์ž: * - ๊ฑฐ์˜ ๋ชจ๋“  ์š”์†Œ์— ์ ์šฉ๋˜๋ฉฐ, ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ์Œ
  6. ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธ: ๋ธŒ๋ผ์šฐ์ €๊ฐ€ HTML ์š”์†Œ์— ๊ธฐ๋ณธ์ ์œผ๋กœ ์ ์šฉํ•˜๋Š” ์Šคํƒ€์ผ - ๊ฐ€์žฅ ๋‚ฎ์€ ์šฐ์„ ์ˆœ์œ„
  7. ์ค‘๋ณต ์Šคํƒ€์ผ ์ฒ˜๋ฆฌ: ๋™์ผํ•œ ์„ ํƒ์ž๊ฐ€ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉ๋˜๋ฉด, ๊ฐ€์žฅ ๋‚˜์ค‘์— ์ •์˜๋œ ์Šคํƒ€์ผ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

ํŠน์ด์„ฑ ๊ณ„์‚ฐ

ํŠน์ด์„ฑ(Specificity)์€ ์„ ํƒ์ž๊ฐ€ ์–ผ๋งˆ๋‚˜ ๊ตฌ์ฒด์ ์ธ์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ’์œผ๋กœ, ๊ฐ ์„ ํƒ์ž ํƒ€์ž…๋งˆ๋‹ค ๊ณ ์œ ์˜ ์ ์ˆ˜๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค. ํŠน์ด์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค:

  • ์ธ๋ผ์ธ ์Šคํƒ€์ผ: 1000
  • ์•„์ด๋”” ์„ ํƒ์ž: 100
  • ํด๋ž˜์Šค ์„ ํƒ์ž: 10
  • ์š”์†Œ ์„ ํƒ์ž: 1
  • ์ „์ฒด ์„ ํƒ์ž (*): 0
  • ! important: 10,000

์˜ˆ๋ฅผ ๋“ค์–ด, #header .nav li๋ผ๋Š” ์„ ํƒ์ž๋Š” ์•„์ด๋”” ์„ ํƒ์ž(100) + ํด๋ž˜์Šค ์„ ํƒ์ž(10) + ์š”์†Œ ์„ ํƒ์ž(1)๋กœ ์ด ํŠน์ด์„ฑ ์ ์ˆ˜๋Š” 111์ด ๋ฉ๋‹ˆ๋‹ค. ์ด ์ ์ˆ˜๊ฐ€ ๋†’์€ ์„ ํƒ์ž๊ฐ€ ์šฐ์„  ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.! important๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, 10,000์ด๋ผ๋Š” ๋†’์€ ํŠน์ด์„ฑ ์ ์ˆ˜๋ฅผ ๊ฐ€์ง€๋ฉฐ, ๋‹ค๋ฅธ ๋ชจ๋“  ์Šคํƒ€์ผ ๊ทœ์น™๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ๊ณ„์  ์ ์šฉ

CSS๋Š” ๋‹จ๊ณ„์ ์œผ๋กœ ์Šคํƒ€์ผ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋™์ผํ•œ ์š”์†Œ์— ์—ฌ๋Ÿฌ ์Šคํƒ€์ผ์ด ์ ์šฉ๋  ๋•Œ, ๋ธŒ๋ผ์šฐ์ €๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

    1. ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์ ์šฉ: ๊ฐ€์žฅ ๋จผ์ € ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์‹œํŠธ๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
    2. ์‚ฌ์šฉ์ž ์ •์˜ ์Šคํƒ€์ผ ์‹œํŠธ ์ ์šฉ: ์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•œ ์™ธ๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ, ๋‚ด๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
    3. ํŠน์ • ์„ ํƒ์ž์˜ ์Šคํƒ€์ผ ์ ์šฉ: ์„ ํƒ์ž์˜ ํŠน์ด์„ฑ์— ๋”ฐ๋ผ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ์Šคํƒ€์ผ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
    4. ์ธ๋ผ์ธ ์Šคํƒ€์ผ ์ ์šฉ: ์ธ๋ผ์ธ ์Šคํƒ€์ผ์ด ๊ฐ€์žฅ ๋†’์€ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๋ฉฐ ์ตœ์ข…์ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
    5. ์ค‘๋ณต ์Šคํƒ€์ผ ์ฒ˜๋ฆฌ: ๋™์ผํ•œ ์„ ํƒ์ž๊ฐ€ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉ๋˜๋ฉด, ๊ฐ€์žฅ ๋‚˜์ค‘์— ์ •์˜๋œ ์Šคํƒ€์ผ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

!important ๊ทœ์น™

!important ๊ทœ์น™์€ CSS์—์„œ ๋งค์šฐ ๋†’์€ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๋Š” ๊ทœ์น™์œผ๋กœ, ์ผ๋ฐ˜์ ์ธ ํŠน์ด์„ฑ ๊ณ„์‚ฐ์„ ๋ฌด์‹œํ•˜๊ณ  ํ•ญ์ƒ ์ตœ์šฐ์„ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, color: red !important;์™€ ๊ฐ™์ด ์ •์˜๋œ ์Šคํƒ€์ผ์€ ๋‹ค๋ฅธ ๋ชจ๋“  ์Šคํƒ€์ผ ๊ทœ์น™๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๋„ˆ๋ฌด ์ž์ฃผ ์‚ฌ์šฉํ•˜๋ฉด CSS ์ฝ”๋“œ๊ฐ€ ๋ณต์žกํ•ด์ง€๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์–ด๋ ค์›Œ์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ฃผ์˜ํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์šฐ์„ ์ˆœ์œ„ ์ ์šฉ ๋ฐฉ์‹ ์˜ˆ์‹œ

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS Specificity</title>
    <style>
        body {
            background-color: white; /* ์š”์†Œ ์„ ํƒ์ž, ํŠน์ด์„ฑ: 1 */
        }
        .main {
            background-color: lightgray; /* ํด๋ž˜์Šค ์„ ํƒ์ž, ํŠน์ด์„ฑ: 10 */
        }
        #content {
            background-color: gray; /* ์•„์ด๋”” ์„ ํƒ์ž, ํŠน์ด์„ฑ: 100 */
        }
        div {
            background-color: blue !important; /* ์š”์†Œ ์„ ํƒ์ž, ํŠน์ด์„ฑ: 1, !important ์ ์šฉ */
        }
        #content.main {
            background-color: green; /* ์•„์ด๋”” ์„ ํƒ์ž + ํด๋ž˜์Šค ์„ ํƒ์ž, ํŠน์ด์„ฑ: 110 */
        }
    </style>
</head>
<body>
    <div id="content" class="main">Content Area</div>
</body>
</html>

์ด ์˜ˆ์ œ์—์„œ, div ์š”์†Œ์˜ ๋ฐฐ๊ฒฝ์ƒ‰์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์— ๋”ฐ๋ผ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค:

  1. body { background-color: white; } - ์š”์†Œ ์„ ํƒ์ž, ํŠน์ด์„ฑ: 1
  2. .main { background-color: lightgray; } - ํด๋ž˜์Šค ์„ ํƒ์ž, ํŠน์ด์„ฑ: 10
  3. #content { background-color: gray; } - ์•„์ด๋”” ์„ ํƒ์ž, ํŠน์ด์„ฑ: 100
  4. div { background-color: blue !important; } - ์š”์†Œ ์„ ํƒ์ž, ํŠน์ด์„ฑ: 1, ํ•˜์ง€๋งŒ !important ์ ์šฉ์œผ๋กœ ์ธํ•ด ๊ฐ€์žฅ ๋†’์€ ์šฐ์„ ์ˆœ์œ„
  5. #content.main { background-color: green; } - ์•„์ด๋”” ์„ ํƒ์ž + ํด๋ž˜์Šค ์„ ํƒ์ž, ํŠน์ด์„ฑ: 110

๊ฒฐ๊ณผ์ ์œผ๋กœ, div ์š”์†Œ๋Š” !important ๊ทœ์น™์— ๋”ฐ๋ผ ๋ฐฐ๊ฒฝ์ƒ‰์ด ํŒŒ๋ž€์ƒ‰์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.


CSS์˜ ์ ์šฉ ์šฐ์„ ์ˆœ์œ„์™€ ํŠน์ด์„ฑ์€ ์Šคํƒ€์ผ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•˜๊ณ  ์›ํ•˜๋Š” ๋””์ž์ธ์„ ์ •ํ™•ํžˆ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๋“œ์‹œ ์ดํ•ดํ•ด์•ผ ํ•  ์ค‘์š”ํ•œ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. ์„ ํƒ์ž์˜ ํŠน์ด์„ฑ ์ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์šฐ์„ ์ˆœ์œ„ ๊ทœ์น™์„ ์ค€์ˆ˜ํ•จ์œผ๋กœ์จ, ๋ณต์žกํ•œ ์Šคํƒ€์ผ ์‹œํŠธ์—์„œ๋„ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. !important๋Š” ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์‚ฌ์šฉํ•˜๊ณ , ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๊ณ ๋ คํ•˜์—ฌ CSS๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ƒ์†๐Ÿ‘ฉ‍

CSS์—์„œ ์ƒ์†์€ ๋ถ€๋ชจ ์š”์†Œ์˜ ์Šคํƒ€์ผ์ด ์ž์‹ ์š”์†Œ์— ์ ์šฉ๋˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ƒ์†์„ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ๋” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒ์†๋˜๋Š” ์Šคํƒ€์ผ

์ผ๋ถ€ CSS ์†์„ฑ์€ ์ž๋™์œผ๋กœ ์ž์‹ ์š”์†Œ์— ์ƒ์†๋ฉ๋‹ˆ๋‹ค.

  • color
  • font-family
  • font-size
  • font-style
  • font-weight
  • line-height
  • text-align
  • visibility
  • cursor

์ƒ์†๋˜์ง€ ์•Š๋Š” ์Šคํƒ€์ผ

์ƒ์†๋˜์ง€ ์•Š๋Š” ์†์„ฑ์€ ๋ช…์‹œ์ ์œผ๋กœ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

  • background
  • border
  • margin
  • padding
  • width
  • height
  • position
  • top, right, bottom, left
  • z-index

๋‹จ์œ„๐Ÿงช

CSS์—์„œ๋Š” ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ๋‹จ์œ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์š”์†Œ์˜ ํฌ๊ธฐ, ์œ„์น˜, ์—ฌ๋ฐฑ ๋“ฑ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์œ„๋Š” ์ƒ๋Œ€์ ์ธ ํฌ๊ธฐ๋‚˜ ์ ˆ๋Œ€์ ์ธ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ๊ฐ๊ฐ์˜ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ ์ ํ•ฉํ•œ ๋‹จ์œ„๋ฅผ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

1. ์ƒ๋Œ€์ ์ธ ๋‹จ์œ„

1.1. % (ํผ์„ผํŠธ)

  • ๋ถ€๋ชจ ์š”์†Œ์— ์ƒ๋Œ€์ ์œผ๋กœ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์‹œ: width: 50%; (๋ถ€๋ชจ ์š”์†Œ์˜ ๋„ˆ๋น„์˜ 50%)

1.2. em (๊ธ€๊ผด ํฌ๊ธฐ)

  • ์š”์†Œ์˜ ๊ธ€๊ผด ํฌ๊ธฐ์— ๋Œ€ํ•œ ์ƒ๋Œ€์ ์ธ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์‹œ: font-size: 1.2em; (๋ถ€๋ชจ ์š”์†Œ์˜ ๊ธ€๊ผด ํฌ๊ธฐ์˜ 1.2๋ฐฐ)

1.3. rem (๋ฃจํŠธ ์š”์†Œ์˜ ๊ธ€๊ผด ํฌ๊ธฐ)

  • ๋ฃจํŠธ ์š”์†Œ์˜ ๊ธ€๊ผด ํฌ๊ธฐ์— ๋Œ€ํ•œ ์ƒ๋Œ€์ ์ธ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์‹œ: font-size: 1.2rem; (๋ฃจํŠธ ์š”์†Œ์˜ ๊ธ€๊ผด ํฌ๊ธฐ์˜ 1.2๋ฐฐ)

1.4. vw, vh (๋ทฐํฌํŠธ ๋„ˆ๋น„, ๋†’์ด)

    • ๋ทฐํฌํŠธ์˜ ๋„ˆ๋น„์™€ ๋†’์ด์— ๋Œ€ํ•œ ์ƒ๋Œ€์ ์ธ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: width: 50vw; (๋ทฐํฌํŠธ ๋„ˆ๋น„์˜ 50%)

2. ์ ˆ๋Œ€์ ์ธ ๋‹จ์œ„

2.1. px (ํ”ฝ์…€)

  • ๊ณ ์ •๋œ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์‹œ: width: 200px; (๋„ˆ๋น„๊ฐ€ 200ํ”ฝ์…€)

2.2. cm, mm, in, pt, pc

  • ๋ฌผ๋ฆฌ์ ์ธ ๊ธธ์ด ๋‹จ์œ„๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์‹œ: width: 10cm; (๋„ˆ๋น„๊ฐ€ 10์„ผํ‹ฐ๋ฏธํ„ฐ)

์ƒ‰์ƒ ํ‘œํ˜„๐ŸŽจ

์ƒ‰์ƒ์€ ์›น ๋””์ž์ธ์—์„œ ๋งค์šฐ ์ค‘์š”ํ•œ ์š”์†Œ์ด๋ฉฐ, CSS์—์„œ๋Š” ๋‹ค์–‘ํ•œ ์ƒ‰์ƒ ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ‰์ƒ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ํ‘œ๊ธฐ๋ฒ•์€ ํŠน์ •ํ•œ ์ƒํ™ฉ์ด๋‚˜ ์„ ํ˜ธ๋„์— ๋”ฐ๋ผ ์„ ํƒ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. RGB ๋ฐ HEX ํ‘œ๊ธฐ๋ฒ•์€ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ํŠนํžˆ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ์†Œํ”„ํŠธ์›จ์–ด์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

RGB ํ‘œ๊ธฐ๋ฒ•

RGB(๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘) ํ‘œ๊ธฐ๋ฒ•์€ ์ƒ‰์ƒ์„ ๋นจ๊ฐ•(Red), ์ดˆ๋ก(Green), ํŒŒ๋ž‘(Blue)์˜ ์„ธ ๊ฐ€์ง€ ์ƒ‰์ƒ ์„ฑ๋ถ„์œผ๋กœ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์ƒ‰์ƒ ์„ฑ๋ถ„์€ 0๋ถ€ํ„ฐ 255๊นŒ์ง€์˜ ์ •์ˆ˜ ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋˜๋ฉฐ, ์ด๋“ค์„ ์กฐํ•ฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ƒ‰์ƒ์„ ๋งŒ๋“ค์–ด ๋ƒ…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, (255, 0, 0)์€ ๋นจ๊ฐ„์ƒ‰์„, (0, 255, 0)์€ ์ดˆ๋ก์ƒ‰์„, (0, 0, 255)๋Š” ํŒŒ๋ž€์ƒ‰์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

/* ๋นจ๊ฐ„์ƒ‰ */
color: rgb(255, 0, 0);

/* ์ดˆ๋ก์ƒ‰ */
background-color: rgb(0, 255, 0);

/* ํŒŒ๋ž€์ƒ‰ */
border-color: rgb(0, 0, 255);

HEX ํ‘œ๊ธฐ๋ฒ•

HEX ํ‘œ๊ธฐ๋ฒ•์€ RGB ์ƒ‰์ƒ์„ 16์ง„์ˆ˜๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๊ฐ ์ƒ‰์ƒ ์„ฑ๋ถ„์€ 0๋ถ€ํ„ฐ 255๊นŒ์ง€์˜ ๊ฐ’์„ 16์ง„์ˆ˜๋กœ ํ‘œํ˜„ํ•˜์—ฌ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ฐ ์ƒ‰์ƒ ์„ฑ๋ถ„์€ ๋‘ ์ž๋ฆฌ์˜ 16์ง„์ˆ˜๋กœ ํ‘œํ˜„๋˜๋ฉฐ, # ๊ธฐํ˜ธ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋นจ๊ฐ„์ƒ‰์€ #FF0000, ์ดˆ๋ก์ƒ‰์€ #00FF00, ํŒŒ๋ž€์ƒ‰์€ #0000FF์™€ ๊ฐ™์ด ํ‘œ๊ธฐ๋ฉ๋‹ˆ๋‹ค.

/* ๋นจ๊ฐ„์ƒ‰ */
color: #FF0000;

/* ์ดˆ๋ก์ƒ‰ */
background-color: #00FF00;

/* ํŒŒ๋ž€์ƒ‰ */
border-color: #0000FF;

HSL ํ‘œ๊ธฐ๋ฒ•

HSL(์ƒ‰์ƒ, ์ฑ„๋„, ๋ช…๋„) ํ‘œ๊ธฐ๋ฒ•์€ ์ƒ‰์ƒ์„ ์ƒ‰์ƒ(Hue), ์ฑ„๋„(Saturation), ๋ช…๋„(Lightness)๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด ๋ฐฉ์‹์€ ์ƒ‰์ƒ์„ ์กฐ์ •ํ•˜๋Š” ๋ฐ ๋” ์ง๊ด€์ ์ด๋ฉฐ, ์ƒ‰์ƒ์„ ๋ณด๋‹ค ๋‹ค์–‘ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒ‰์ƒ์€ 0๋ถ€ํ„ฐ 360๊นŒ์ง€์˜ ๊ฐ๋„๋กœ ํ‘œํ˜„๋˜๊ณ , ์ฑ„๋„์™€ ๋ช…๋„๋Š” ํผ์„ผํŠธ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.

/* ์ƒ‰์ƒ: ๋นจ๊ฐ„์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50% */
color: hsl(0, 100%, 50%);

/* ์ƒ‰์ƒ: ์ดˆ๋ก์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50% */
background-color: hsl(120, 100%, 50%);

/* ์ƒ‰์ƒ: ํŒŒ๋ž€์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50% */
border-color: hsl(240, 100%, 50%);

RGBA ๋ฐ HSLA ํ‘œ๊ธฐ๋ฒ•

RGBA์™€ HSLA ํ‘œ๊ธฐ๋ฒ•์€ ๊ฐ๊ฐ RGB์™€ HSL ํ‘œ๊ธฐ๋ฒ•์— ํˆฌ๋ช…๋„(Alpha) ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํˆฌ๋ช…๋„ ๊ฐ’์€ 0๋ถ€ํ„ฐ 1๊นŒ์ง€์˜ ๋ฒ”์œ„๋กœ ํ‘œํ˜„๋˜๋ฉฐ, 0์€ ์™„์ „ํžˆ ํˆฌ๋ช…ํ•˜๊ณ  1์€ ์™„์ „ํžˆ ๋ถˆํˆฌ๋ช…ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

/* ๋นจ๊ฐ„์ƒ‰, ํˆฌ๋ช…๋„ 50% */
color: rgba(255, 0, 0, 0.5);

/* ์ดˆ๋ก์ƒ‰, ํˆฌ๋ช…๋„ 50% */
background-color: rgba(0, 255, 0, 0.5);

/* ํŒŒ๋ž€์ƒ‰, ํˆฌ๋ช…๋„ 50% */
border-color: rgba(0, 0, 255, 0.5);
/* ์ƒ‰์ƒ: ๋นจ๊ฐ„์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50%, ํˆฌ๋ช…๋„: 50% */
color: hsla(0, 100%, 50%, 0.5);

/* ์ƒ‰์ƒ: ์ดˆ๋ก์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50%, ํˆฌ๋ช…๋„: 50% */
background-color: hsla(120, 100%, 50%, 0.5);

/* ์ƒ‰์ƒ: ํŒŒ๋ž€์ƒ‰, ์ฑ„๋„: 100%, ๋ช…๋„: 50%, ํˆฌ๋ช…๋„: 50% */
border-color: hsla(240, 100%, 50%, 0.5);

ํ•ต์‹ฌ ๋‚ด์šฉ๐Ÿ‘€

css ์ฃผ์š” ํŠน์ง•

728x90
๋ฐ˜์‘ํ˜•
LIST