CSS @layer๋ก ์บ์ค์ผ์ด๋ ์์๋ฅผ ์ ์ดํ๊ณ ์คํ์ผ์ํธ ๊ตฌ์ฑ์ ๊ฐ์ ํ์ฌ ์ ์ง๋ณด์์ฑ์ ๋์ฌ๋ณด์ธ์. ํจ๊ณผ์ ์ธ ์บ์ค์ผ์ด๋ ๋ ์ด์ด ๊ด๋ฆฌ๋ฅผ ์ํ ์ค์ฉ์ ์ธ ๊ธฐ์ ๊ณผ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์์๋ณด์ธ์.
CSS @layer: ํ์ฅ ๊ฐ๋ฅํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์ด ์คํ์ผ์ํธ๋ฅผ ์ํ ์บ์ค์ผ์ด๋ ๋ ์ด์ด ๊ด๋ฆฌ ๋ง์คํฐํ๊ธฐ
CSS ์บ์ค์ผ์ด๋๋ ์ฌ๋ฌ ์ถฉ๋ํ๋ ๊ท์น์ด ์กด์ฌํ ๋ ์ด๋ค ์คํ์ผ์ด ์์์ ์ ์ฉ๋ ์ง๋ฅผ ๊ฒฐ์ ํ๋ ๊ธฐ๋ณธ์ ์ธ ๋ฉ์ปค๋์ฆ์ ๋๋ค. ์บ์ค์ผ์ด๋๋ ์คํ์ผ ์ถฉ๋์ ํด๊ฒฐํ๋ ์์ฐ์ค๋ฌ์ด ๋ฐฉ๋ฒ์ ์ ๊ณตํ์ง๋ง, ๋ณต์กํ ์คํ์ผ์ํธ๋ ํฌ๊ธฐ์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๊ด๋ฆฌํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ด๋ ค์์ง ์ ์์ต๋๋ค. CSS @layer, ์ฆ ์บ์ค์ผ์ด๋ ๋ ์ด์ด๋ ์บ์ค์ผ์ด๋๋ฅผ ์ ์ดํ๋ ๊ฐ๋ ฅํ ์๋ก์ด ๋ฐฉ๋ฒ์ ๋์ ํ์ฌ CSS ๊ท์น์ ๊ตฌ์ฑํ๊ณ ์ฐ์ ์์๋ฅผ ์ ํ๋ ๊ตฌ์กฐ์ ์ธ ์ ๊ทผ๋ฒ์ ์ ๊ณตํฉ๋๋ค.
CSS @layer๋ ๋ฌด์์ธ๊ฐ?
CSS @layer๋ฅผ ์ฌ์ฉํ๋ฉด CSS ์บ์ค์ผ์ด๋ ๋ด์ ์ด๋ฆ์ด ์ง์ ๋ ๋ ์ด์ด๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ๊ฐ ๋ ์ด์ด๋ ์คํ์ผ ์งํฉ์ ์ปจํ ์ด๋ ์ญํ ์ ํ๋ฉฐ, ์ด ๋ ์ด์ด๋ค์ด ์ ์๋ ์์์ ๋ฐ๋ผ ์บ์ค์ผ์ด๋์์์ ์ฐ์ ์์๊ฐ ๊ฒฐ์ ๋ฉ๋๋ค. ์ด๋ ์์ค ์์๋ ๋ช ์๋์ ๊ด๊ณ์์ด ์ด๋ค ์คํ์ผ์ด ๋ค๋ฅธ ์คํ์ผ๋ณด๋ค ์ฐ์ ํด์ผ ํ๋์ง๋ฅผ ๋ช ์์ ์ผ๋ก ์ ์ํ ์ ์์์ ์๋ฏธํฉ๋๋ค.
๋ ์ด์ด๋ฅผ ์คํ์ผ ๊ท์น์ ๊ฐ๋ณ์ ์ธ ์คํ์ด๋ผ๊ณ ์๊ฐํ ์ ์์ต๋๋ค. ๋ธ๋ผ์ฐ์ ๊ฐ ์์์ ์คํ์ผ์ ๊ฒฐ์ ํด์ผ ํ ๋, ๊ฐ์ฅ ๋์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง ๋ ์ด์ด์์ ์์ํ์ฌ ์ผ์นํ๋ ๊ท์น์ ์ฐพ์ ๋๊น์ง ์คํ์ ๋ด๋ ค๊ฐ๋๋ค. ๋ง์ฝ ์ฐ์ ์์๊ฐ ๋์ ๋ ์ด์ด์ ๊ท์น์ด ๋ฎ์ ๋ ์ด์ด์ ๊ท์น๊ณผ ์ถฉ๋ํ๋ฉด, ์ฐ์ ์์๊ฐ ๋์ ๊ท์น์ด ์ด๊น๋๋ค.
์ CSS @layer๋ฅผ ์ฌ์ฉํด์ผ ํ๋๊ฐ?
CSS @layer๋ ํนํ ํฌ๊ณ ๋ณต์กํ ํ๋ก์ ํธ์์ CSS ์คํ์ผ์ํธ๋ฅผ ๊ด๋ฆฌํ๊ณ ์ ์ง๋ณด์ํ๋ ๋ฐ ๋ช ๊ฐ์ง ์ค์ํ ์ด์ ์ ์ ๊ณตํฉ๋๋ค:
- ํฅ์๋ ๊ตฌ์ฑ: ๋ ์ด์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๊ด๋ จ ์คํ์ผ์ ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ทธ๋ฃนํํ์ฌ ์คํ์ผ์ํธ๋ฅผ ๋ ๊ตฌ์กฐํํ๊ณ ์ดํดํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ์คํ์ผ๊ณผ ํ ๋ง ์คํ์ผ, ์ปดํฌ๋ํธ ์คํ์ผ๊ณผ ์ ํธ๋ฆฌํฐ ์คํ์ผ ๋ฑ์ ๋ถ๋ฆฌํ ์ ์์ต๋๋ค.
- ํฅ์๋ ์ ์ง๋ณด์์ฑ: ์บ์ค์ผ์ด๋ ์์๋ฅผ ๋ช ์์ ์ผ๋ก ์ ์ดํจ์ผ๋ก์จ ์๋ํ์ง ์์ ์คํ์ผ ์ถฉ๋ ๊ฐ๋ฅ์ฑ์ ์ค์ด๊ณ ํ์ํ ๋ ์คํ์ผ์ ๋ ์ฝ๊ฒ ์ฌ์ ์ํ ์ ์์ต๋๋ค. ์ด๋ ๋๋ฒ๊น ์ ๋จ์ํํ๊ณ ํ๊ท(regression) ๋ฐ์ ์ํ์ ์ค์ ๋๋ค.
- ๊ฐํ๋ ๋ช ์๋ ์ ์ด: ๋ ์ด์ด๋ ๊ธฐ์กด CSS๋ณด๋ค ๋ ๋์ ์์ค์ ๋ช ์๋ ์ ์ด ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ์คํ์ผ์ด ๋ช ์๋์ ๊ด๊ณ์์ด ํญ์ ์ฐ์ ์์๋ฅผ ๊ฐ๋๋ก ํ ์ ์์ต๋๋ค.
- ๊ฐ์ ๋ ํ์ : ํ์ผ๋ก ์์ ํ ๋, ๋ ์ด์ด๋ ์ฌ๋ฌ ๊ฐ๋ฐ์์ ์ฝ๋ ์ฌ์ด์ ๋ช ํํ ๊ฒฝ๊ณ๋ฅผ ์ ์ํ์ฌ ์ถฉ๋ ์ํ์ ์ค์ด๊ณ ํ์ ์ ๊ฐ์ ํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ํ ๊ฐ๋ฐ์๋ ๊ธฐ๋ณธ ์คํ์ผ์, ๋ค๋ฅธ ๊ฐ๋ฐ์๋ ํ ๋ง ์คํ์ผ์ ๋ด๋นํ ์ ์์ต๋๋ค.
- ๋จ์ํ๋ ํ ๋ง ์ ์ฉ: ๋ ์ด์ด๋ ํ ๋ง ์์คํ ์ ๋ ์ฝ๊ฒ ๊ตฌํํ ์ ์๊ฒ ํด์ค๋๋ค. ๊ณตํต ์คํ์ผ์ ๊ฐ์ง ๊ธฐ๋ณธ ๋ ์ด์ด๋ฅผ ์ ์ํ ๋ค์, ํน์ ์คํ์ผ์ ์ฌ์ ์ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ์๊ณผ ๋๋์ ๋ณ๊ฒฝํ๋ ๋ณ๋์ ํ ๋ง ๋ ์ด์ด๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
CSS @layer ์ฌ์ฉ ๋ฐฉ๋ฒ
CSS @layer ์ฌ์ฉ์ ๊ฐ๋จํฉ๋๋ค. @layer
at-rule์ ์ฌ์ฉํ์ฌ ๋ ์ด์ด๋ฅผ ์ ์ํ๊ณ ๊ทธ ๋ค์ ๋ ์ด์ด ์ด๋ฆ์ ๋ถ์
๋๋ค. ๊ทธ๋ฐ ๋ค์ layer()
ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ ์ด์ด๋ก ์คํ์ผ์ ๊ฐ์ ธ์ค๊ฑฐ๋ @layer
๋ธ๋ก ๋ด์์ ์ง์ ์คํ์ผ์ ์ ์ํ ์ ์์ต๋๋ค.
๋ ์ด์ด ์ ์ํ๊ธฐ
๋ ์ด์ด๋ฅผ ์ ์ํ๋ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
@layer <layer-name>;
์ฌ๋ฌ ๋ ์ด์ด๋ฅผ ์ ์ํ ์ ์์ต๋๋ค:
@layer base;
@layer components;
@layer utilities;
๋ ์ด์ด๋ฅผ ์ ์ํ๋ ์์๊ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค. ๊ฐ์ฅ ๋จผ์ ์ ์๋ ๋ ์ด์ด๊ฐ ๊ฐ์ฅ ๋ฎ์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง๋ฉฐ, ๊ฐ์ฅ ๋ง์ง๋ง์ ์ ์๋ ๋ ์ด์ด๊ฐ ๊ฐ์ฅ ๋์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง๋๋ค.
๋ ์ด์ด๋ก ์คํ์ผ ๊ฐ์ ธ์ค๊ธฐ
@import
๋ฌธ ๋ด์์ layer()
ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ ์ด์ด๋ก ์คํ์ผ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค:
@import url("base.css") layer(base);
์ด๋ base.css
์ ์คํ์ผ์ base
๋ ์ด์ด๋ก ๊ฐ์ ธ์ต๋๋ค.
๋ ์ด์ด ๋ด์์ ์ง์ ์คํ์ผ ์ ์ํ๊ธฐ
@layer
๋ธ๋ก ๋ด์์ ์ง์ ์คํ์ผ์ ์ ์ํ ์๋ ์์ต๋๋ค:
@layer components {
.button {
background-color: blue;
color: white;
padding: 10px 20px;
}
}
์ด๋ components
๋ ์ด์ด ๋ด์์ .button
ํด๋์ค์ ๋ํ ์คํ์ผ์ ์ ์ํฉ๋๋ค.
๋ ์ด์ด ์์์ ์ฐ์ ์์
๋ ์ด์ด๊ฐ ์ ์๋ ์์๊ฐ ๊ทธ ์ฐ์ ์์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. ๋ค์ ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค:
@layer base;
@layer components;
@layer utilities;
@layer base {
body {
font-family: sans-serif;
background-color: #f0f0f0;
}
}
@layer components {
.button {
background-color: blue;
color: white;
padding: 10px 20px;
}
}
@layer utilities {
.margin-top-20 {
margin-top: 20px;
}
}
์ด ์์์์ utilities
๋ ์ด์ด๊ฐ ๊ฐ์ฅ ๋์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง๋ฉฐ, ๊ทธ ๋ค์์ด components
, ๊ทธ๋ฆฌ๊ณ base
์์
๋๋ค. ์ด๋ utilities
๋ ์ด์ด์ ์คํ์ผ ๊ท์น์ด components
๋ base
๋ ์ด์ด์ ๊ท์น๊ณผ ์ถฉ๋ํ ๊ฒฝ์ฐ utilities
๊ท์น์ด ์ ์ฉ๋จ์ ์๋ฏธํฉ๋๋ค.
๋ ์ด์ด ์์ ์ฌ์ ๋ ฌํ๊ธฐ
์ํ๋ ์์๋๋ก ๋ ์ด์ด ์ด๋ฆ์ ๋์ดํ @layer
at-rule์ ์ฌ์ฉํ์ฌ ๋ ์ด์ด ์์๋ฅผ ์ฌ์ ๋ ฌํ ์ ์์ต๋๋ค:
@layer utilities, components, base;
์ด๋ ๋ ์ด์ด์ ์์๋ฅผ ์ฌ์ ๋ ฌํ์ฌ utilities
๊ฐ ๊ฐ์ฅ ๋ฎ์ ์ฐ์ ์์๋ฅผ, components
๊ฐ ์ค๊ฐ ์ฐ์ ์์๋ฅผ, ๊ทธ๋ฆฌ๊ณ base
๊ฐ ๊ฐ์ฅ ๋์ ์ฐ์ ์์๋ฅผ ๊ฐ๋๋ก ํฉ๋๋ค.
CSS @layer์ ์ค์ ์ฌ์ฉ ์์
๋ค์์ CSS @layer๋ฅผ ์ฌ์ฉํ์ฌ ์คํ์ผ์ํธ๋ฅผ ๊ตฌ์ฑํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๋ช ๊ฐ์ง ์ค์ ์์์ ๋๋ค:
์์ 1: ๊ธฐ๋ณธ ์คํ์ผ๊ณผ ํ ๋ง ์คํ์ผ ๋ถ๋ฆฌํ๊ธฐ
๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ณธ์ ์ธ ๋ชจ์๊ณผ ๋๋์ ์ ์ํ๋ ๊ธฐ๋ณธ ์คํ์ผ๊ณผ, ๋ค๋ฅธ ๋ธ๋๋๋ ์ฌ์ฉ์ ์ ํธ๋์ ๋ฐ๋ผ ์ธ๊ด์ ๋ง์ถค ์ค์ ํ ์ ์๋ ํ ๋ง ์คํ์ผ์ ๋ถ๋ฆฌํ ์ ์์ต๋๋ค.
@layer base;
@layer theme;
@layer base {
body {
font-family: sans-serif;
font-size: 16px;
color: #333;
}
h1 {
font-size: 2em;
font-weight: bold;
}
}
@layer theme {
body {
background-color: #fff;
}
h1 {
color: blue;
}
}
์ด ์์์์ base
๋ ์ด์ด๋ ๋ณธ๋ฌธ๊ณผ ์ ๋ชฉ์ ๊ธฐ๋ณธ ๊ธ๊ผด, ๊ธ์ ํฌ๊ธฐ, ์์์ ์ ์ํฉ๋๋ค. theme
๋ ์ด์ด๋ ๋ณธ๋ฌธ์ ๋ฐฐ๊ฒฝ์๊ณผ ์ ๋ชฉ์ ์์์ ์ฌ์ ์ํฉ๋๋ค. ์ด๋ฅผ ํตํด theme
๋ ์ด์ด์ ์คํ์ผ๋ง ๋ณ๊ฒฝํ์ฌ ์ฝ๊ฒ ๋ค๋ฅธ ํ
๋ง๋ก ์ ํํ ์ ์์ต๋๋ค.
์์ 2: ์ปดํฌ๋ํธ ์คํ์ผ ๊ตฌ์ฑํ๊ธฐ
๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ๋ฌ ์ปดํฌ๋ํธ์ ๋ํ ์คํ์ผ์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค๋ฅธ ๋ถ๋ถ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ํน์ ์ปดํฌ๋ํธ์ ์คํ์ผ์ ์ฝ๊ฒ ์ฐพ๊ณ ์์ ํ ์ ์์ต๋๋ค.
@layer reset;
@layer typography;
@layer layout;
@layer components;
@layer utilities;
@layer reset { /* ์ ๊ทํ ์คํ์ผ */
}
@layer typography { /* ํฐํธ ์ ์, ์ ๋ชฉ, ๋จ๋ฝ ์คํ์ผ */
}
@layer layout { /* ๊ทธ๋ฆฌ๋ ์์คํ
, ์ปจํ
์ด๋ */
}
@layer components {
.button {
background-color: #4CAF50;
border: none;
color: white;
padding: 15px 32px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
cursor: pointer;
}
.card {
border: 1px solid #ccc;
padding: 20px;
margin-bottom: 10px;
}
}
@layer utilities {
.margin-top-20 {
margin-top: 20px;
}
}
์ด ์์๋ ์คํ์ผ์ reset, typography, layout, components, utilities ๋ ์ด์ด๋ก ๋ถ๋ฆฌํฉ๋๋ค. ์ด๋ฅผ ํตํด ํน์ ์ปดํฌ๋ํธ๋ ์ ํธ๋ฆฌํฐ ํด๋์ค์ ๋ํ ์คํ์ผ์ ์ฝ๊ฒ ์ฐพ์ ์ ์์ต๋๋ค.
์์ 3: ์๋ํํฐ ์คํ์ผ ๊ด๋ฆฌํ๊ธฐ
์๋ํํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋, ๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ๋ค์ ์คํ์ผ์ ์์ ์ ์คํ์ผ๊ณผ ๋ถ๋ฆฌํ ์ ์์ต๋๋ค. ์ด๋ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ ํ์ํ ๋ ์๋ํํฐ ์คํ์ผ์ ๋ ์ฝ๊ฒ ์ฌ์ ์ํ ์ ์๊ฒ ํด์ค๋๋ค.
@layer third-party;
@layer custom;
@import url("bootstrap.min.css") layer(third-party);
@layer custom {
/* ๋ถํธ์คํธ๋ฉ ์คํ์ผ์ ์ฌ์ ์ํ๋ ์ปค์คํ
์คํ์ผ */
.btn-primary {
background-color: #007bff;
}
}
์ด ์์์์ ๋ถํธ์คํธ๋ฉ์ ์คํ์ผ์ third-party
๋ ์ด์ด๋ก ๊ฐ์ ธ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ custom
๋ ์ด์ด๋ ๋ถํธ์คํธ๋ฉ ์คํ์ผ์ ์ฌ์ ์ํ๋ ์คํ์ผ์ ํฌํจํฉ๋๋ค. ์ด๋ ์ปค์คํ
์คํ์ผ์ด ๋ถํธ์คํธ๋ฉ ์คํ์ผ๋ณด๋ค ์ฐ์ ์์๋ฅผ ๊ฐ๋๋ก ๋ณด์ฅํ๋ฉด์๋, ์ปค์คํ
์คํ์ผ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ถํธ์คํธ๋ฉ์ ์ฝ๊ฒ ์
๋ฐ์ดํธํ ์ ์๊ฒ ํด์ค๋๋ค.
CSS @layer ์ฌ์ฉ์ ์ํ ๋ชจ๋ฒ ์ฌ๋ก
CSS @layer๋ฅผ ์ฌ์ฉํ ๋ ์ผ๋์ ๋์ด์ผ ํ ๋ช ๊ฐ์ง ๋ชจ๋ฒ ์ฌ๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ๋ ์ด์ด ๊ตฌ์กฐ ๊ณํํ๊ธฐ: ๋ ์ด์ด ์ฌ์ฉ์ ์์ํ๊ธฐ ์ ์, ์๊ฐ์ ๋ด์ด ๋ ์ด์ด ๊ตฌ์กฐ๋ฅผ ๊ณํํ์ธ์. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค์ํ ์คํ์ผ ์ ํ๊ณผ ์๋ก ์ด๋ป๊ฒ ๊ด๋ จ๋๋์ง ๊ณ ๋ คํ์ธ์. ์ค๋ช ์ ์ด๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ๋ ์ด์ด ์ด๋ฆ์ ์ ํํ์ธ์.
- ์ผ๊ด์ฑ ์๊ฒ ๋ ์ด์ด ์ ์ํ๊ธฐ: ์คํ์ผ์ํธ ์ ์ฒด์์ ์ผ๊ด๋ ์์๋ก ๋ ์ด์ด๋ฅผ ์ ์ํ์ธ์. ์ด๋ ๊ฒ ํ๋ฉด ์บ์ค์ผ์ด๋ ์์๋ฅผ ๋ ์ฝ๊ฒ ์ดํดํ๊ณ ์๋ํ์ง ์์ ์คํ์ผ ์ถฉ๋ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค.
- ๋ ์ด์ด์ ์ญํ ์ ์ง์คํ๊ธฐ: ๊ฐ ๋ ์ด์ด๋ ํน์ ์ ํ์ ์คํ์ผ์ ์ง์คํด์ผ ํฉ๋๋ค. ์ด๋ ์คํ์ผ์ํธ๋ฅผ ๋ ์ฒด๊ณ์ ์ด๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฝ๊ฒ ๋ง๋ญ๋๋ค.
- ๋ช ์๋ ๊ด๋ฆฌ๋ฅผ ์ํด ๋ ์ด์ด ์ฌ์ฉํ๊ธฐ: ๋ ์ด์ด๋ ๋ช ์๋๋ฅผ ์ ์ดํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ง๋ง, ํ๋ช ํ๊ฒ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋๋ฌด ๋ณต์กํ ๋ช ์๋ ๊ณ์ธต์ ๋ง๋๋ ๋ฐ ๋ ์ด์ด๋ฅผ ์ฌ์ฉํ์ง ๋ง์ธ์.
- ๋ ์ด์ด ๊ตฌ์กฐ ๋ฌธ์ํํ๊ธฐ: ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ด ์คํ์ผ์ํธ๊ฐ ์ด๋ป๊ฒ ๊ตฌ์ฑ๋์ด ์๋์ง ์ดํดํ ์ ์๋๋ก ๋ ์ด์ด ๊ตฌ์กฐ๋ฅผ ๋ฌธ์ํํ์ธ์. ์ด๋ ํนํ ํ์ผ๋ก ์์ ํ ๋ ์ค์ํฉ๋๋ค.
๋ธ๋ผ์ฐ์ ์ง์
CSS @layer๋ ํฌ๋กฌ, ํ์ด์ดํญ์ค, ์ฌํ๋ฆฌ, ์ฃ์ง๋ฅผ ํฌํจํ ์ต์ ๋ธ๋ผ์ฐ์ ์ ๋ฐ์์ ํ๋ฅญํ ๋ธ๋ผ์ฐ์ ์ง์์ ์ ๊ณตํฉ๋๋ค. ์์ฌํ๊ณ ํ๋ก์ ํธ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
CSS @layer๋ CSS์์ ์บ์ค์ผ์ด๋๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ฐ๋ ฅํ ๋๊ตฌ์ ๋๋ค. ๋ ์ด์ด๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ์คํ์ผ์ํธ์ ๊ตฌ์ฑ, ์ ์ง๋ณด์์ฑ, ํ์ฅ์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค. ์์ ์น์ฌ์ดํธ๋ฅผ ์์ ํ๋ ๋๊ท๋ชจ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ํ๋ , CSS @layer๋ ๋ ๊นจ๋ํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์ด CSS ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐ ๋์์ ์ค ์ ์์ต๋๋ค.
CSS @layer๋ฅผ ์ ๊ทน ํ์ฉํ์ฌ CSS ์บ์ค์ผ์ด๋๋ฅผ ์ ์ดํ๊ณ ๋ ๊ฒฌ๊ณ ํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์ด ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ์ธ์.