전처리기의 자신만의 특별한 syntax를 가지고 CSS를 생성하도록 하는 프로그램
→ CSS의 문제점들을 Programmatically 한 방식. 즉 변수, 함수, 상속 등 일반적인 프로그래밍 개념을 사용가능( 전처리기는 태생적으로 기존 css가 가질 수 있는 불리한 점 해결 위해 탄생)
CSS 를 확장하기 위한 스크립팅 언어로 컴파일러를 통해 CSS 포맷으로 변환
CSS 전처리기에는 다양한 모듈이 존재
→ 서로의 특징에 맞게 약간의 Syntax만 다를뿐 개념 자체는 동일
→ CSS 전처리기 성능 비교 사이트 : https://csspre.com/compile/
Sass
sass styls.scss styls.css
Less
lessc style.less style.css
Stylus
stylus style.styl style.css
공식 문서 - https://sass-lang.com/
Sass(Syntactically Awesome Style Sheets)의 version3에서 SCSS 등장
→ SCSS와 CSS 구문은 완전히 호환되도록 새로운 구문 도입해 만든 Sass의 모든 기능 지원 CSS!
→ SCSS가 CSS와 거의 같은 문법으로 Sass기능 지원(더 넓은 범용성 + CSS와의 호환성)
$primary-color: seashell
$primary-bg: darkslategrey
body
color: $primary-color
background: $primary-bg
→ Sass 선택자의 유효범위 들여쓰기로 구분
$primary-color: seashell;
$primary-bg: darkslategrey;
body {
color: $primary-color;
background: $primary-bg;
}
→ SCSS {}로 범위 구분
body {
color:seashell;
background: darkslategrey;
}
공식 문서 - http://lesscss.org/
@primary-color: seashell;
@primary-bg: darkslategrey;
body {
color: @primary-color;
background: @primary-bg;
}
body {
color: seashell;
background: darkslategrey;
}
공식 문서 - https://stylus-lang.com/
primary-color = seashell
primary-bg = darkslategrey
body
color primary-color
background primary-bg
body {
color: seashell;
background: darkslategrey;
}
https://developer.mozilla.org/ko/docs/Glossary/CSS_preprocessor
https://chanhuiseok.github.io/posts/web-5/
https://kdydesign.github.io/2019/05/12/css-preprocessor/
https://a-tothe-z.tistory.com/12