& ,> ,+,~
1 | .onclick{ |
&
1 | .menu { |
&
1 | scss |
變數 Variables:$開頭
Scss
1 | $font-stack: Helvetica, sans-serif; |
變數編譯後Css
1 | body { |
巢狀
Scss
1 | nav { |
巢狀編譯後Css
1 | nav ul { |
混入 Mixins
@mixin,@include
Scss
1 | // 經常重複使用的樣式 |
混入 Mixins編譯後Css
1 | .box { |
混繼承 Extent/Inderitance
@mixin,@include
Scss
1 | /* This CSS will print because %message-shared is extended. */ |
混繼承 Extent編譯後Css
1 | /* This CSS will print because %message-shared is extended. */ |
@mixin 和 @extend 使用
@mixin 的好處:減少重複撰寫樣式,卻也可能造成編譯後的 CSS 樣式大量重複,使檔案異常肥大。
@mixin 和 @extend 兩者的使用時機與差異
是否需傳遞參數
是否需考慮編譯後 CSS 大小
模組 Modules
編譯前 SCSS:要作為模組載入的 SCSS 檔案,名稱必須帶有底線,例如 _base.scss。