Sass官網(wǎng):https://www.sass.hk/docs/
菜鳥教程Sass:https://www.runoob.com/sass/sass-tutorial.html
?Sass就是css的預(yù)處理器,Scss是Sass3版本中引入的新語法特性
vue中使用scss烹俗,安裝:
cnpmi -S node-sass sass-loader
使用:
使用$符號(hào)去聲明一個(gè)變量
給同一個(gè)變量再次賦值時(shí)萄凤,后賦值的會(huì)替換先賦值的
可以在變量的結(jié)尾添加!default給一個(gè)未通過!default聲明賦值的變量賦值刚陡,此時(shí),如果變量已經(jīng)被賦值,不會(huì)再被重新賦值句旱,但是如果變量還沒有被賦值抡驼,則會(huì)被賦予新的值鬼廓。
通俗點(diǎn)說,致盟!default就像一個(gè)備胎碎税。
如果變量需要鑲嵌在字符串之中尤慰,就必須需要寫在#{}之中。
在嵌套的代碼塊內(nèi)伟端,可以使用&引用父元素。比如a:hover偽類匪煌,可以寫成:
a{
&:hover {color:red; }
}
SASS允許一個(gè)選擇器,繼承另一個(gè)選擇器萎庭。使用@extend?
Mixin是可以重用的代碼塊驳规。使用@mixin命令肴敛,定義一個(gè)代碼塊,使用@include命令吗购,調(diào)用這個(gè)mixin医男。
還可以指定參數(shù)
還可以給參數(shù)指定默認(rèn)值,如果在使用時(shí)沒有提供參數(shù)捻勉,則參數(shù)會(huì)使用默認(rèn)值镀梭;
如果提供了參數(shù),則會(huì)使用提供的參數(shù)覆蓋默認(rèn)參數(shù)的值
還可以指定多個(gè)參數(shù)
參數(shù)會(huì)按定義的順序依次賦值
用以下的方式還可以讓順序按照自己想法來
如果需要導(dǎo)入 SCSS? 文件丰辣,但又不希望將其編譯為 CSS,只需要在文件名前添加下劃線禽捆,這樣會(huì)告訴 Sass 不要編譯這些文件笙什,但導(dǎo)入語句中卻不需要添加下劃線。
例如胚想,將文件命名為_color.scss琐凭,便不會(huì)編譯成_color.css文件。
@import?"color.scss" 導(dǎo)入的其實(shí)是_colors.scss文件
(注意浊服,不可以同時(shí)存在添加下劃線與未添加下劃線的同名文件统屈,否則添加下劃線的文件將會(huì)被忽略。)
吨掌!default上面已經(jīng)介紹到了,可以把它理解成為一個(gè)備胎。
膜宋!global就是可以將變量提升為全局變量窿侈。不到萬不得已,不要用它秋茫,因?yàn)樗芎?jiǎn)單粗暴史简,直接破壞了作用域規(guī)則,影響全局
7.2 循環(huán)語句 @for ,@while(平時(shí)用的比較少圆兵,暫時(shí)先了解)
@for ,@while,@each
@for $i fromthrough
@for $i fromto
$i 表示變量
start 表示起始值
end 表示結(jié)束值
這兩個(gè)的區(qū)別是關(guān)鍵字 through 表示包括?end 這個(gè)數(shù),而 to 則不包括?end 這個(gè)數(shù)策泣。
具體的參考:https://blog.csdn.net/deng_gene/article/details/52399755衙傀,http://www.ruanyifeng.com/blog/2012/06/sass.html
color:lighten(green,?10%);表示綠色變淺10%
color:darken(green,?10%);?表示綠色加深10%