<aside> ๐ scss์ ๋ํด์ ๋ฐฐ์๋ด ์๋ค
</aside>
์ด์ ์ css๋ณ์๋ฅผ ์์ฑํ๋ฉฐ ๋ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ด ์์๊น ๊ณ ๋ฏผํ๋ ์ค scss๋ฅผ ๋ง๋๊ฒ ๋์์ต๋๋ค.
Sass(SCSS)๊ฐ ๋์ค๊ฒ ๋ ๋ฐฐ๊ฒฝ
์ ๊ฐ CSS๋ณ์๋ฅผ ์์ฑํ๋ฉฐ ๋๊ผ๋ ๋ถํธํจ๋ค์ด Sass๊ฐ ๋์ค๊ฒ ๋ ๋ฐฐ๊ฒฝ์ ๋๋ค. ๊ฐ๋ตํ๊ฒ ๋ฉ๋ชจ์ ๊ธฐ๋ก๋ ๋ธ๋ก๊ทธ์ ๋ด์ฉ์ ์ธ์ฉํ์๋ฉด
์ด๋ฐ ์ด์ ๋ค๋ก ์ธํด Sass๊ฐ ๋ฑ์ฅํ๊ฒ ๋์์ต๋๋ค.
Sass(SCSS)๋ ?
Syntactically Awesome StyleSheet์ ์ฝ์๋ก ์ฝ๋์ ์ฌํ์ฉ์ฑ์ ์ฌ๋ฆฌ๊ณ , ๊ฐ๋ ์ฑ์ ์ฌ๋ ค์ฃผ๋ CSS์ ๋จ์ ์ ๋ณด์ํ๊ณ ํจ์จ์ ๋์ธ CSS ์ ์ฒ๋ฆฌ๊ธฐ ์ธ์ด์ ๋๋ค.

์ฌ๊ธฐ์ ์ฃผ์ํ ์ ์ Sass ์์ฒด๋ก CSSํ์ผ์ด ์๋๋ผ ๋ณ๋์ ํ์ผ๋ก ์กด์ฌํ๋ฉฐ ์ปดํ์ผ์ ํด์ฃผ๋ฉด CSSํ์ผ์ ๋ง๋ค์ด์ฃผ๋ ์ ์ฒ๋ฆฌ๊ธฐ ์ธ์ด๋ผ๋ ์ ์ ๋๋ค. ์ ํฌ๊ฐ ์ฌ์ฉํ๋ ๊ฒ์ Sass๋ฅผ ํตํด ๋ง๋ค์ด์ง cssํ์ผ์ ์ฌ์ฉํฉ๋๋ค.
Sass vs SCSS
์ ๊ฐ ์์ ์ค๋ช ์์๋ ์ด ๋์ ํผ์ฉํด์ ์ฌ์ฉํ์ต๋๋ค. ์๋๋ ๊ทธ๋ฌ๋ฉด ์๋์ง๋ง ์ง๊ธ ์ด์ ๋ฅผ ์ค๋ช ๋๋ฆฌ๊ฒ ์ต๋๋ค. ์ด ๋์ ๋ฌธ๋ฒ ์๊น์๋ ๋ค๋ฅด์ง๋ง ์ฌ์ค ๊ฐ์ ํ์ ์ธ์ด๋ผ๊ณ ๋ด๋ ๋ฌด๋ฐฉํฉ๋๋ค. Sass์ 3๋ฒ์ ์์ ๋ฑ์ฅํ ์ธ์ด๋ผ๊ณ ํฉ๋๋ค.
SASS๋ ๋ค์ฌ ์ฐ๊ธฐ+์ค ๋ฐ๊ฟ ํ์, SCSS๋ ์ค๊ดํธ+์ธ๋ฏธ์ฝ๋ก ํ์
์ ๋ ์ด ๋์ ๋น๊ตํด๋ณด๋ฉฐ SCSS๋ฅผ ์ต์ข ์ ํํ์ต๋๋ค.
์ด๋ฌํ ์ด์ ๋ก SCSS๋ฅผ ์ฌ์ฉํด์ CSS๋ณ์๋ฅผ ์์ฑํ์ต๋๋ค.
$type-bold : 700;
$type-medium : 500;
$size-large : 24px;
$size-medium : 16px;
$size-regular : 14px;
$size-small : 12px;
@mixin font-variable($weight,$size,$height:auto){
font-weight: $weight;
font-size: $size;
line-height: $height;
}
/*ํ์ดํ, ์๋ธํ์ดํ, ๋ฑ ๊ตต์ ๋ฌธ์ ์ ๋ณด๋ฅผ ๋ฐฐ์นํ ๋ ์ฌ์ฉ*/
.display-bold24{
@include font-variable($type-bold,$size-large)
}
.selected-bold16, .display-bold16{
@include font-variable($type-bold,$size-medium)
}
.selected-bold14, .display-bold14{
@include font-variable($type-bold,$size-regular)
}
.display-bold12{
@include font-variable($type-bold,$size-small)
}
/*๋ณธ๋ฌธ, ์ฃผ์, ๋ณด์กฐ ์ ๋ณด ๋ฑ ๋ฌธ์ ์ ๋ณด๋ฅผ ๋ฐฐ์นํ ๋ ์ฌ์ฉ*/
.available-medium16, .display-medium16{
@include font-variable($type-medium,$size-medium,22px)
}
.available-medium14, .display-medium14{
@include font-variable($type-medium,$size-regular)
}
.display-medium12{
@include font-variable($type-medium,$size-small)
}
์ด๋ ๊ฒ ์ต์ข SCSSํ์ผ์ ์์ฑํ์ต๋๋ค. ์ด์ ์ CSSํ์ผ๋ณด๋ค ๊น๋ํ๊ณ ์์ ์ด ํธ๋ฆฌํ ์ฝ๋๊ฐ ๋ ๊ฒ ๊ฐ์ ๋ง์์ด ํธํํด์ก์ต๋๋ค.
SCSS์ ๋ณ๊ฒฝ์ ์๋์ผ๋ก ๊ฐ์งํด์ CSSํ์ผ์ ์์ฑํด ์ฃผ๋ Live Sass Compiler๋ผ๋ ์ต์คํ ์ ์ ์ฌ์ฉํ๋ฉด์ ํ์ตํ๊ฒ ๋ vscode์ setting.json์ ์ฌ๋ ๋ฐฉ๋ฒ์ ๋ฐ๋ก ์ ๋ฆฌํ์ต๋๋ค. ์ถ๊ฐ์ ์ผ๋ก Live Sass Compiler์ ํ์?์ ์ธ ์ค์ ๋ฐฉ๋ฒ๋ ์ค๋ช ๋๋ฆฌ๊ฒ ์ต๋๋ค. โ๐ป vscode setting.json
๊ทธ๋ฆฌ๊ณ SCSS๋ฅผ ์ค์นํ๊ณ ์ต์คํ ์ ์ ์ค์นํ๋ฉฐ ๋ง์ ์๊ฐ์ ํ๋นํ ์ค์๊ฐ ์์์ต๋๋ค. ๊ทธ๋์ ์์ด๋จน์ง ์๊ธฐ ์ํด ๋ฐ๋ก ์ค์ ์ผ์ง์ ์์ฑํ ์์ ์ ๋๋ค. โ๐ป extension ๋จ์ฉ
https://inpa.tistory.com/entry/SCSS-๐-SassSCSS-๋-์ค์น-๋ฐ-์ปดํ์ผ