1. CLI๋ก sass ์ค์น
- Node.js ์ค์น๊ฐ ๋์ด ์์ด์ผ ๋จ.
npm install sass -g
๋ก CLI ์ ์ค์น.
2. sass ๋ฒ์ ํ์ธ
$ npm show sass version
$ sass --version
3. ํด๋น ๋๋ ํ ๋ฆฌ์ scss -> css ๋ณํ
$ sass style.scss style.css
$ sass <๋ณํํ scss ํ์ผ๋ช
> <๋ณํ๋ css ํ์ผ๋ช
>
์
๋ ฅ.
ํด๋ ์์ ์์ ๊ฒฝ์ฐ,
$ sass scss/style.scss style.css
4. sass ๋ณด๊ธฐ , ๋๋ด๊ธฐ
--watch
๋ผ๋ ํ๋๊ทธ๋ฅผ ๋ฃ์ด ํด๋น ํ์ผ ์๋์ผ๋ก ๋ณํ.
$ sass --watch style.scss:style.css
์๋์ฒ๋ผ ํด๋ ๋ด ๋ชจ๋ ํ์ผ๋ค์ ์ปดํ์ผํ ์ ์๋ค.
sass --watch <inputํด๋>:<outputํด๋>
$ sass --watch scss:css
sass ์ค์๊ฐ ์ปดํ์ผ ๋๋ด๋ ค๋ฉด ctrl + c
์ถ๊ฐ
sass๋ณด๊ธฐ + css ๋ณํ์คํ์ผ
$ sass --watch scss/style.scss:css/style.css --style compact
5. sass ๋ณํ์คํ์ผ
$ sass --style compact scss/style.scss css/style.css
๋ณํ์คํ์ผ
- nested
- expanded
- compact
- compressed
/* nested */
ul {
font-family: arial;
color: #333; }
ul li {
display: inline-block; }
/* expanded */
ul {
font-family: arial;
color: #333;
}
ul li {
display: inline-block;
}
/* compact */
ul { font-family: arial; color:#333; }
ul li { display: inline-block; }
/* compressed */
ul{font-family:arial;color:#333;}ul li{display:inline-block;}
#. scss ํ์ผ์์ _.scss
ํฌํจํ๋ ์ด์
_
๊ฐ ์๋ ํ์ผ์ ์ปดํ์ผ๋ฌ ์์ ๋ฌด์.
ํ์ผ๋ช ์
_
๊ฐ ๋ถ๋ ๊ฒฝ์ฐ @import ๋์ด ์ฌ์ฉํ ๊ฒ์์ ์์.@import ์์๋
_
๋ฅผ ๋นผ๊ณ ๊ฒฝ๋ก๋ฅผ ์ก์๋ ์ธ์๋จ.โโโ css โ โโโ common.css โโโ scss โโโ common.scss โโโ _reset.scss โโโ _layout.scss
// common.scss
@charset "utf-8";
@import 'reset';
@import 'layout';
@import ์์๋๋ก ์คํ์ผ์ด ์ ์ฉ.
$ sass --watch scss:css --style compact
cssํด๋์์ common.css
ํ์ผ๋ง ์์ฑ์ด ๋๋ค.
_
๊ฐ ๋ถ์ธ scssํ์ผ์ ์ปดํ์ผ๋์ง ์๋๋ค.
#. ๋ช ๋ น์ด
// ์ปดํ์ผ ๋ฐฉ๋ฒ
$ sass input.scss output.css
// compact ํ์์ผ๋ก ์ปดํ์ผ
$ sass --style compact input.scss out.css
// Mapํ์ผ ์ ์ธํ๊ณ ์ปดํ์ผ
$ sass --sourcemap=none input.scss output.css
// ์๋์ปดํ์ผ ๋ฐฉ๋ฒ
$ sass --watch input.scss:output.css
// ์๋์ผ๋ก Mapํ์ผ ์ ์ธํ๊ณ ์ปดํ์ผ
$ sass --watch --sourcemap=none input.scss:output.css
// ์๋์ผ๋ก compactํ์์ผ๋ก ์ปดํ์ผ
$ sass --watch --style compact input.css
// ์๋์ผ๋ก Mapํ์ผ ์ ์ธํ๊ณ compact ํ์์ผ๋ก ์ปดํ์ผ
$ sass --watch --sourcemap
Reference