λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
"곡뢀" π‘Ÿπ‘’π‘π‘œπ‘Ÿπ‘‘/πΉπ‘Ÿπ‘œπ‘›π‘‘π‘’π‘›π‘‘

[TIL] CSS / Sass / SCSS 차이점 μ•Œμ•„λ³΄κΈ°

by ΰ·† Yoni ΰ·† 2023. 6. 3.
728x90
What is CSS ?

 

CSSλŠ” Cascading Style Sheets의 약어이고, μ΄λŠ” μ›ΉνŽ˜μ΄μ§€λ₯Ό κΎΈλ―Έλ €κ³  μž‘μ„±ν•˜λŠ” μ½”λ“œμ΄λ‹€.

μ–΄λŠ 정도 μ›Ή κ°œλ°œμ„ κ³΅λΆ€ν•œ μ‚¬λžŒμ΄λΌλ©΄ ν”„λ‘ νŠΈμ—”λ“œ, λ°±μ—”λ“œ 개발자λ₯Ό λ§‰λ‘ ν•˜κ³  CSSλΌλŠ” 것은 ν”νžˆλ“€ 듀어봀을 것이닀.

κ³΅μ‹λ¬Έμ„œμ— μ˜ν•˜λ©΄ CSSλŠ” ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄κ°€ μ•„λ‹ˆκ³ , Stylesheet 언어라고 ν•œλ‹€. CSSλ₯Ό 톡해 HTML λ¬Έμ„œμ— μžˆλŠ” μš”μ†Œλ“€μ— μ„ νƒμ μœΌλ‘œ μŠ€νƒ€μΌμ„ μ μš©μ‹œν‚¬ 수 μžˆλ‹€.

.list {
  width: 100px;
  float: left;
  }
li {
  color: red;
  background: url("./image.jpg");
  }
li:last-child {
  margin-right: -10px;
  }

 

CSSλŠ” λ„ˆλ¬΄ μ΅μˆ™ν•΄
Sass 와 SCSSλŠ” λ¬΄μ—‡μΌκΉŒ ??

 

Sass

SassλŠ” Syntactically Awesome StyleSheet 의 μ•½μ–΄λ‘œ, CSS의 단점을 λ³΄μ™„ν•˜κΈ° μœ„ν•΄ λ§Œλ“  CSS의 μ „μ²˜λ¦¬κΈ°μ΄λ‹€. 

SassλŠ” 개발자용 언어이기 λ•Œλ¬Έμ— μ›Ή λΈŒλΌμš°μ €κ°€ 읽을 μˆ˜κ°€ μ—†λ‹€. λ”°λΌμ„œ, 쀑간에 컴파일러λ₯Ό κ±°μ³μ„œ CSS둜 λ³€ν™˜ν•˜μ—¬ HTML에 μ—°κ²°ν•˜λŠ” 과정이 ν•„μš”ν•˜λ‹€λŠ” 단점이 μ‘΄μž¬ν•œλ‹€.

 

SassλŠ” λ³€μˆ˜ μ •μ˜λ₯Ό ν—ˆμš©ν•œλ‹€. λ³€μˆ˜λŠ” $으둜 μ‹œμž‘ν•  수 있으며, λ³€μˆ˜ 할당은 콜둠(:)으둜 마무리 ν•œλ‹€λŠ” νŠΉμ§•μ΄ μžˆλ‹€.

Sass 문법은 듀여쓰기와 μ€„λ°”κΏˆμ΄ λ¬Έλ²•μ˜ μ€‘μš”ν•œ μš”μ†Œ 쀑 ν•˜λ‚˜μ΄κΈ° λ•Œλ¬Έμ— μ—¬λŸ¬ 쀄 μ“°κΈ°λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€. Sass 문법을 λ©€ν‹°λΌμΈμœΌλ‘œ μž‘μ„±ν•  μ‹œ 컴파일 μ—λŸ¬κ°€ λ°œμƒν•œλ‹€.

.list
  width: 100px
  float: left
  li
    color: red
    background: url("./image.jpg")
    &:last-child
      margin-right: -10px

 

SCSS

SCSSλž€ Sassy CSS둜 멋진 CSSλΌλŠ” λœ»μ΄λ‹€. 이 SCSS와 Sassμ™€μ˜ κ°€μž₯ 큰 차이점은 μ€‘κ΄„ν˜Έμ™€ μ„Έλ―Έμ½œλ‘ μ„ μ‚¬μš©ν•œλ‹€λŠ” 데에 μžˆλ‹€. μ€‘κ΄„ν˜Έλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” Sass와 λ‹€λ₯΄κ²Œ κΈ°μ‘΄ CSS의 λ¬Έλ²•μ˜ νŠΉμ§•μΈ μ€‘κ΄„ν˜Έλ₯Ό κ·ΈλŒ€λ‘œ μ‚¬μš©ν•˜μ—¬ 곡백에 μ˜ν•΄ 컴파일 μ—λŸ¬κ°€ λ°œμƒν•  ν™•λ₯ μ΄ 적고 μ’€ 더 μ§κ΄€μ μœΌλ‘œ 이해할 수 μžˆλ‹€λŠ” 데에 νŠΉμ§•μ΄ μžˆλ‹€.

 

이외에도 λͺ‡ 개의 문법 차이가 μžˆμ§€λ§Œ, SCSSκ°€ Sass보닀 늦게 λ‚˜μ™”κ³  CSS의 ν˜Έν™˜μ„± λ©΄μ—μ„œ 더 μž₯점을 가지고 μžˆμ–΄ 곡식 문법도 SCSS κΈ°μ€€μœΌλ‘œ λ‚˜μ™€μžˆμ„ μ •λ„λ‘œ SCSS의 μ‚¬μš©μ„ 더 ꢌμž₯ν•˜κ³  μžˆλ‹€.

.list {
  width: 100px;
  float: left;
  li {
    color: red;
    background: url("./image.jpg");
    &:last-child {
      margin-right: -10px;
    }
  }
}

 

 

[μ°Έμ‘°]

https://sass-lang.com/

https://heropy.blog/2018/01/31/sass/

https://namu.wiki/w/Sass

728x90

λŒ“κΈ€