Sass(SCSS)란?

기존 CSS의 한계

  • 선택자(Selector)의 불필요한 사용

  • 연산 · 조건 · 반복문 불가

  • CSS 코드의 길이 · 복잡성 증가

CSS Preprocessor(전처리기)

  • CSS 동작 전 사용하는 기능. 전처리기로 작성하고 CSS로 컴파일(Compile)하여 동작

    // styles.scss
    $primary-color: #fff;
    
    * {
      margin: 0 auto;
      box-sizing: border-box;
      color: $primary-color;
    }
    /* styles.css(compiled) */
    * {
    margin: 0 auto;
    box-sizing: border-box;
    color: #fff; }
  • CSS에 프로그래밍적인 요소(변수, 함수, 상속 및 중첩 등)를 접목하여 CSS 문서 작성에 도움

    • 장점: 재사용성, 내장 함수 사용(생산성 증가), 유지 관리 용이

    • 예시) Sass(SCSS), Less, Stylus 등

Sass와 SCSS의 차이점

  • SCSS가 Sass의 상위 집합(Superset)

    • SCSS가 기존 CSS 문법과 더 유사({}, ; 존재)

Sass(SCSS)의 사용

  1. 변수: $ 기호를 통해 생성

  2. 중첩(Nesting): 선택자(Selector) 중첩 가능

  3. 모듈(Module): CSS snippet을 다른 SCSS 파일에서 사용 가능

  4. 믹스인(Mixins): 재사용할 CSS 선언을 그룹화하여 사용

  5. 상속(Extend/ Inheritance)

  6. 연산자(Operators)

Reference

Sass Doc

Sass(SCSS) 완전 정복 | Heropy

Last updated