SASS常用語法概要

什么是SASS

sass是“css預處理器”中的一員,所謂“css預處理器”就是用一種專門的編程語言衅谷,進行網(wǎng)頁樣式設計慕爬,然后再編譯成正常的css文件。

sass就是在css語法的基礎上增加了變量 (variables)茵典、嵌套 (nested rules)湘换、混合 (mixins)、導入 (inline imports) 等高級功能统阿,這些拓展令 CSS 更加強大與優(yōu)雅彩倚。使用 Sass 以及 Sass 的樣式庫(如Compass)有助于更好地組織管理樣式文件,以及更高效地開發(fā)項目扶平。

sass有兩種文件格式帆离,文件后綴名分別為.scss和.sass

其中.scss文件和一般的.css文件格式一樣,都有花括號和分號结澄,僅僅只是在css的語法上進行了拓展哥谷;而.sass文件使用 “縮進” 代替 “花括號” 表示屬性屬于某個選擇器,用 “換行” 代替 “分號” 分隔屬性麻献∶峭祝縮進格式也可以使用 Sass 的全部功能,只是與 SCSS 相比個別地方采取了不同的表達方式勉吻,具體請查看the indented syntax reference监婶。


.scss文件
.sass文件

基本語法

*下文中的涉及到的例子均為.sass文件格式

變量($)


變量定義及使用
編譯后的.css文件

變量有塊級作用域(局部變量)和全局作用域(全局變量)之分,也可通過!global將塊級作用域里面的局部變量轉(zhuǎn)化為全局變量齿桃;

全局變量和塊級變量
全局變量和塊級變量
編譯后的.css文件
塊級變量變?yōu)槿肿兞?/div>

*這里遇到了一個坑惑惶,在.sass文件中不要在!global后面直接添加注釋,編譯會報錯短纵,但是在.scss文件中在!global后面直接添加注釋集惋,編譯卻不會報錯,估計是因為.scss文件中有;可以明確區(qū)分代碼和注釋踩娘,而.sass中不能明確區(qū)分什么是注釋什么是代碼

如果要將變量插入到字符串中刮刑,可以使用插值符號——#{}

插值符號的使用
編譯后的.css文件

嵌套(選擇器嵌套&屬性嵌套&父選擇器)


選擇器嵌套&屬性嵌套&父選擇器的使用


編譯后的.css文件

運算

SASS還支持運算的功能

加減乘除喉祭、取整等運算 (+, -, *, /, %),同時雷绢,如果有需要它會在不同單位間轉(zhuǎn)換值泛烙。


編譯前.sass
編譯后.css

比較特殊的是/運算,根據(jù)不同情況可以處理為除法運算或者僅僅只是分隔數(shù)字的作用

以下三種情況/將被視為除法運算符號:

如果值翘紊,或值的一部分蔽氨,是變量或者函數(shù)的返回值

如果值被圓括號包裹

如果值是算數(shù)表達式的一部分

但如果希望使用變量,同時又要確保/不做除法運算而是完整地編譯到 CSS 文件中帆疟,只需要用#{}插值語句將變量包裹鹉究。

編譯前.sass
編譯后.css


除了數(shù)值的運算還有顏色值的計算

顏色值的運算是分段計算進行的,也就是分別計算紅色踪宠,綠色自赔,以及藍色的值

不過感覺一般實際項目中很少用到顏色值的計算,不過覺得有趣柳琢,所以就簡單提一下

編譯前.sass
編譯后.css

混合指令 (Mixin Directives)

混合指令(Mixin)用于定義可重復使用的樣式绍妨,通過@mixin來定義,@include來調(diào)用柬脸,同時支持參數(shù)的指定他去,參數(shù)若是沒有傳時,可以使用默認值倒堕,或者明確要傳入哪一個特定參數(shù)灾测。

編譯前.sass
編譯后.css

繼承 ( @extend )

sass支持一個選擇器繼承另一個選擇器的所有樣式。

編譯前.sass
編譯后.css

插入文件( @import )

Sass 拓展了@import的功能垦巴,允許其導入 SCSS 或 Sass 文件媳搪。被導入的文件將合并編譯到同一個 CSS 文件中,另外魂那,被導入的文件中所包含的變量或者混合指令 (mixin) 都可以在導入的文件中使用。

若導入的文件后綴名為.css文件稠项,則import作為普通的css語句涯雅。

若導入的文件后綴名為.sass或.scss,則被導入的文件將與當前文件合并展运,同時活逆,@import "foo"或者@import "foo.sass"導入的效果都是一致的,沒有指定拓展名拗胜,Sass 將會試著尋找文件名相同蔗候,拓展名為.scss或.sass的文件并將其導入。

注釋

Sass 支持標準的 CSS 多行注釋/* */埂软,以及單行注釋//锈遥,前者會被完整輸出到編譯后的 CSS 文件中,而后者則不會。

編譯前.sass
編譯后.css

高級用法

sass支持的數(shù)據(jù)類型中所灸,除了數(shù)字丽惶,字符串,顏色爬立,布爾型钾唬,空值,

還有:

數(shù)組 (list)侠驯,用空格或逗號作分隔符抡秆,1.5em 1em 0 2em, Helvetica, Arial, sans-serif

maps, 相當于 JavaScript 的 object,(key1: value1, key2: value2)

于是我們便可以使用@each這樣的高級用法

@each

編譯前.sass
編譯后.css
編譯前.sass
編譯后.css

@for

編譯前.sass
編譯后.css

@if

編譯前.sass
編譯后.css

SASS常用語法就總結(jié)到這里了吟策,都是一些比較常見儒士,日常開發(fā)中能用到的語法。

在總結(jié)的過程中踊挠,對我也是一個很好的鞏固的過程乍桂,畢竟組織成文字和小demo的形式更容易記住。

最后效床,個人認為用的合適才是發(fā)揮了sass帶來的便利睹酌,不要為了用sass而用sass,一不小心反而會使得代碼變得復雜剩檀。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末憋沿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子沪猴,更是在濱河造成了極大的恐慌辐啄,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件运嗜,死亡現(xiàn)場離奇詭異壶辜,居然都是意外死亡,警方通過查閱死者的電腦和手機担租,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門砸民,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人奋救,你說我怎么就攤上這事岭参。” “怎么了尝艘?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵演侯,是天一觀的道長。 經(jīng)常有香客問我背亥,道長秒际,這世上最難降的妖魔是什么悬赏? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮程癌,結(jié)果婚禮上舷嗡,老公的妹妹穿的比我還像新娘。我一直安慰自己嵌莉,他們只是感情好进萄,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著锐峭,像睡著了一般中鼠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沿癞,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天援雇,我揣著相機與錄音,去河邊找鬼椎扬。 笑死惫搏,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蚕涤。 我是一名探鬼主播筐赔,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼揖铜!你這毒婦竟也來了茴丰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤天吓,失蹤者是張志新(化名)和其女友劉穎贿肩,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體龄寞,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡汰规,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了物邑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片溜哮。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖拂封,靈堂內(nèi)的尸體忽然破棺而出茬射,到底是詐尸還是另有隱情鹦蠕,我是刑警寧澤冒签,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站钟病,受9級特大地震影響萧恕,放射性物質(zhì)發(fā)生泄漏刚梭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一票唆、第九天 我趴在偏房一處隱蔽的房頂上張望朴读。 院中可真熱鬧,春花似錦走趋、人聲如沸衅金。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽氮唯。三九已至,卻和暖如春姨伟,著一層夾襖步出監(jiān)牢的瞬間惩琉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工夺荒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瞒渠,地道東北人。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓技扼,卻偏偏與公主長得像伍玖,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子淮摔,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容