์ ํ์ ์ถฉ๋ ์
<p class="special"></p>
/*css*/
.special{
color: blue;
}
p{
color: red;
}
css๋ cascade์ specificity๋ผ๊ณ ๋ถ๋ฆฌ๋ rule์ ๊ฐ์ง๊ณ ์๊ณ , ํด๋น rule์ ๋ฐ๋ผ ์ถฉ๋ ์ ๋ ๊ฐํ ์ ํ์๊ฐ ์ ์ฉ๋๋ค.
- cascade rule : ๋ค์ ์ ์ฉ๋ ์คํ์ผ์ด ์์ ์คํ์ผ์ ๋ฎ์ด์ด๋ค.
- specificity rule : ์์๋ฅผ ๋ ํน์ ํ๋ ์ ํ์๊ฐ ์คํ์ผ์ ์ฐจ์งํ๋ค.
- ๋ฐ๋ผ์ ์์ ์์ ์์ specificty rule์ ์ํด color๋ blue๊ฐ ๋๋ค.
specificity
specificity๋ 4๊ฐ์ง์ ๋จ์๋ก ์ธก์ ๋๋ค.
- Thousands : style ์์ฑ ๋ด์ ์ ์๋์ด ์๋ style(inline style)์ผ ๊ฒฝ์ฐ
- Hundreds : ID selector๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ํ style์ผ ๊ฒฝ์ฐ
- Tens : Class selector๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ํ style์ผ ๊ฒฝ์ฐ
- Ones : ์ด์ธ์ selector
- ์์ธ : universal selector(*), combinators(+, >, ~, ''), negation pseudo-class (:not)๋ specificity์ ์ํฅ์ด ์๋ค.
ํด๋น ๋จ์๋ค์ ์ดํด๋ฅผ ๋๊ธฐ ์ํ ๋จ์์ผ ๋ฟ Ones๊ฐ 10๊ฐ ๋ชจ์๋ค๊ณ Tens๋ณด๋ค ์ฐ์ ์์๊ฐ ๋์์ง์ง ์๋๋ค.
!importance
ํด๋น ๋ช ๋ น์ด๋ฅผ style ์ ์ ๋ค์ ๋ถ์์ผ๋ก์จ specificity๋ฅผ ๋์ผ ์ ์์ง๋ง, !importance๋ฅผ ๋ถ์ธ style์ ๋ค์ overrideํ๊ธฐ ์ํด์๋ ๋ ๋์ specificity๋ฅผ ๊ฐ์ง๊ณ !importance๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
๋ค์๊ณผ ๊ฐ์ ์์๋ก css๋ ์ ์ฉ๋๋ค.
- user agent style sheet : ๋ธ๋ผ์ฐ์ ๋ฑ์ ๊ธฐ๋ณธ ์คํ์ผ
- normal declarations in user style sheets : ์ ์ ์ ์ปค์คํ ์คํ์ผ
- normal declarations in author style sheets : ์น ๊ฐ๋ฐ์๊ฐ ์ธํ ํ ์คํ์ผ
- important declarations in author style sheets : ๊ฐ๋ฐ์ important ์คํ์ผ
- important declarations in user style sheets : ์ ์ important ์คํ์ผ
Inheritance
inheritance๋ css์ ์ ์ฉ์ ์ค๋ช ํ๊ธฐ ์ํด ์ค์ํ ์์์ด๋ค. ์ด๋ ํ ์์์ ์ค style์ด ํด๋น ์์์ ์์๋ค์๊ฒ ๊ทธ๋๋ก ์ ๋ฌ๋๋ ๊ฒ์ inheritance๋ผ๊ณ ํ๋ค.
์ด๋ค ์์ฑ๋ค์ ์๋์ผ๋ก ์์๋๊ณ ์ด๋ค ์์ฑ๋ค์ ์์๋์ง ์๋๋ค. ์๋ฅผ ๋ค์ด color, font-family์ ๊ฐ์ ์์ฑ๋ค์ ์์๋์ง๋ง margin, padding, border ์ ๊ฐ์ ์คํ์ผ ์์ฑ์ ์์๋์ง ์๋๋ค. css๋ inheritance๋ฅผ ์กฐ์ ํ๊ธฐ ์ํ 4๊ฐ์ ์์ฑ๊ฐ์ ๊ฐ์ง๊ณ ์๋ค.
- inherit : ์์๋ฐ์ ์ฌ์ฉํ๋ค.
- initial : ๊ฐ ์์ฑ ๋ณ default ๊ฐ์ด ์ ์ฉ๋๋ค.
- unset : ๊ฐ ์์์ ๊ธฐ๋ณธ ์์ฑ ๊ฐ์ด inherit์ธ์ง initial์ธ์ง์ ๋ฐ๋ผ ์ ์ฉ๋๋ค.
- revert : unset๊ณผ ๋น์ทํ์ง๋ง ์์ฑ์ด ์๋ ๋ธ๋ผ์ฐ์ ์ ๊ธฐ๋ณธ ์์ฑ ๊ฐ์ผ๋ก ์ ์ฉ๋๋ค.
all์ด๋ผ๋ ์์ฑ์ผ๋ก ๋ชจ๋ ์์ฑ์ ์ด๋ค ์์ฑ๊ฐ์ผ๋ก ์ฌ์ฉํ ์ง ๊ฒฐ์ ํ ์ ์๋ค.
.hi{
all : unset;
}
inherit ๋๋ ์์ฑ
- color
- cursor
- font
- line-height
- letter-spacing
- list-style
- text-align
- visibility
- white-space
- word-spacing
'์น (WEB) > ๊ณต๋ถ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Open Graph ์ดํดํ๊ณ ์ ์ฉํ๊ธฐ (feat. ์นด์นด์คํก์์ ๋ณ๊ฒฝ์ด ์ ์ฉ๋์ง ์์ ๋) (1) | 2022.01.09 |
---|---|
[Next] _app.tsx์์ url parmater ์ฌ์ฉ (0) | 2021.11.11 |
Javascript ๊ธฐ๋ณธ :: declare (Typescript์์ type ์์ ๋) (4) | 2021.09.22 |
CommonJS vs ES Modules (0) | 2021.09.22 |
React context ์ฝ๋ ๋จ์ํํ๊ธฐ :: ๋ฆฌํฉํ ๋ง (0) | 2021.09.21 |
Comment