2022-06-30|閱讀時間 ‧ 約 4 分鐘

SCSS入門 - 在Vue中使用SCSS

SCSS與SASS都是CSS預處理器,可以幫助開發者更方便管理CSS程式碼,而SASS寫法上不須加上「{} ;」,而是用縮排來簡化,SCSS寫法上則類似CSS,可以兼容CSS語法,SASS則無法兼容CSS語法,以下將以SCSS為主來說明。

CSS/SCSS/SASS寫法差別

vue.js使用scss
  1. 安裝scss編譯器
$ npm install -D sass-loader node-sass
2. 使用方法
(1) 加上lang="scss",直接寫在style中。
(2) 使用src引入scss

& 連接

屬性巢狀

變數宣告

@mixin / @include
  • 類似function的概念

@extend

@mixin @extend 差別
  • @extend
編譯後CSS:
繼承的部分編譯後會合在一起。
  • @mixin
編譯後CSS:
引用的style會直接放進selector,會有一堆重複的程式,如果@mixin寫很多行,又很多selector都引用,編譯出來的CSS就會很大包。
所以如果是重複的樣式,用extend會比較好,build出來的css較小,如果是想重複使用的定義,且要根據參數設定,就用mixin。

@import
編譯後CSS:
值得一提的是,假設已經有用src引入scss,裡面的import跟style都會被src的scss取代:
編譯後CSS:
可以發現sub.scss跟.hello_world全被main.scss取代了。

註解
(1) 單行註解: //
  • 編譯後的css註解會消失。
(2) 多行註解: /**/
  • 編譯後的css註解會保留,但如果是編譯+壓縮,註解也會消失。
  • 若想要編譯+壓縮後保留註解,需在註解開頭使用/*!,如下:
編譯+壓縮後CSS(有經過format):
編譯+壓縮後CSS(未經過format):

分享至
成為作者繼續創作的動力吧!
小弟是一位軟體工程師,樂於幫助他人,撰寫技術文章除了幫助自己複習以外,也希望可以幫助到他人,若文章內容有誤,還請大大不吝給予指教!
從 Google News 追蹤更多 vocus 的最新精選內容從 Google News 追蹤更多 vocus 的最新精選內容

發表回應

成為會員 後即可發表留言