SCSS 基礎(chǔ)語法

1. 選擇器擴(kuò)展

1. BEM 命名法(CSS 命名)

BEM 全稱為 Block Element Modifier
比如要給一個模塊取名字,步驟如下:
1. 先確定模塊的名字豁陆,如 user-card
2. 這一模塊的子代或后代元素都圍繞這個名字來命名甥啄,用兩個下劃線連接。如模塊里面的頭像用 .user-card__picture熙掺,名字用 .user-card__name材泄,簡介用 .user-card__description悠鞍。
3. 當(dāng)某個元素發(fā)生狀態(tài)的變化,如 hover 或 click 時樣式改變参滴,命名時用兩個中劃線連接强岸。如 .user-card--active.user-card__picture--active砾赔。

雖然 BEM 命名法邏輯清晰蝌箍,且各模塊名字之間不會相互影響,但名字比較冗長暴心,實際開發(fā)中我們可以根據(jù)這個思想改的簡潔一些妓盲,例如將 .user-card__picture--active 改寫成 .userCard-picture .activeclass="userCard-picture active")。

2. 嵌套選擇器

<div class="userCard active">
    <div class="userCard-name"></div>
</div>
.userCard{
    width: 100px;
    .userCard-name{
        color: block;
    }
}
// 編譯后的 CSS
.userCard{
    width: 100px; }
    .userCard-name{
        color: block; }

3. & 符號

.userCard{
    width: 100px;
    &.active{
        background: orange;
    }
    &-name{
        color: block;
    }
}

4. 嵌套屬性

.userCard{
    width: 100px;
    font: {
        size: 20px;
        weight: bold;
        family: 'Courier New',Courier,monospace;
    }
}

2. 注釋

CSS 只能 /*單行注釋*/专普,SCSS 可以支持 // 單行注釋
如果多行注釋的第一個字母是 !悯衬,那么注釋總是會被保留到輸出的 CSS 中。

3. 變量

變量可以在多個選擇器里引用同一個數(shù)值檀夹,方便批量修改筋粗。

.userCard{
    width: 100px;
    &-name{
        $width: 120px;
        width: $width;
        height: $width;
    }
}

變量是有作用域的。
可以使用 !global 強(qiáng)行變?yōu)槿肿兞浚ú煌扑]使用)
如果定義一個變量名為 $main-width炸渡,也可以使用 $main_width訪問它娜亿。

4. 運(yùn)算

  1. SCSS 支持?jǐn)?shù)字的加減乘除(除法特殊),取模運(yùn)算(判斷奇偶)
div{
    width: 100px + 100px + 100px; // 加
    width: 100px * 100; // 乘
    width: (100px/2); // 除
    width: $width/2; // 除
    width: 100px/2-0; // 除
    width: 101px % 2; // 取模運(yùn)算偶摔,值為1暇唾,奇數(shù)
    width: 100px % 2; // 取模運(yùn)算,值為0辰斋,偶數(shù)
}

/ 解析為除法的三種情況:

  • 如果該值策州,或值的任何部分,存儲在一個變量中或通過函數(shù)返回宫仗。
  • 如果該值是由括號括起來的够挂,除非這些括號是在一個列表(list)外部,并且值是括號內(nèi)部藕夫。
  • 如果該值被用作另一個算術(shù)表達(dá)式的一部分孽糖。
  1. 顏色相關(guān)運(yùn)算
div{
    $red: #FF0000;
    color: $red + #888888;
}
// 運(yùn)算之后的值為:
div{
    color:  #FF8888;
}
  • 除此之外枯冈,SCSS 還提供了很多操作顏色的函數(shù),可以對顏色進(jìn)行任何操作办悟,如:
div{
    $red: #FF0000;
    background: fade-out($red, 0.5); // 更改透明度
    color: change-color($color:$red, $green:255); // 更改顏色
}
  1. 字符串插值
    SCSS 支持在代碼里插入字符串或變量(#{})尘奏,如在某個元素的開頭和結(jié)尾各加一個符號,并插入變量:
div{
    $red: #FF0000;
    &::before{
        content: '* #{$red}';
    }
    &::after{
        content: '?';
    }
}
  1. CSS 語法也支持運(yùn)算:
div{
    width: calc(200px / 2);
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末病蛉,一起剝皮案震驚了整個濱河市炫加,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌铺然,老刑警劉巖俗孝,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異魄健,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)沽瘦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進(jìn)店門革骨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來析恋,“玉大人苛蒲,你說我怎么就攤上這事绿满。” “怎么了窟扑?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵喇颁,是天一觀的道長。 經(jīng)常有香客問我嚎货,道長,這世上最難降的妖魔是什么殖属? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮洗显,結(jié)果婚禮上外潜,老公的妹妹穿的比我還像新娘。我一直安慰自己挠唆,他們只是感情好处窥,可當(dāng)我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著玄组,像睡著了一般谒麦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哆致,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天,我揣著相機(jī)與錄音摊阀,去河邊找鬼。 笑死驹溃,一個胖子當(dāng)著我的面吹牛城丧,可吹牛的內(nèi)容都是我干的豌鹤。 我是一名探鬼主播亡哄,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼布疙,長吁一口氣:“原來是場噩夢啊……” “哼蚊惯!你這毒婦竟也來了灵临?” 一聲冷哼從身側(cè)響起截型,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤儒溉,失蹤者是張志新(化名)和其女友劉穎宦焦,沒想到半個月后顿涣,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體波闹,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡涛碑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蒲障。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片歹篓。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡揉阎,死狀恐怖庄撮,靈堂內(nèi)的尸體忽然破棺而出毙籽,到底是詐尸還是另有隱情重窟,我是刑警寧澤惧财,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布巡扇,位于F島的核電站,受9級特大地震影響厅翔,放射性物質(zhì)發(fā)生泄漏乖坠。R本人自食惡果不足惜刀闷,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一熊泵、第九天 我趴在偏房一處隱蔽的房頂上張望甸昏。 院中可真熱鬧顽分,春花似錦施蜜、人聲如沸卒蘸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至趾牧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間肯污,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工蹦渣, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人剂桥。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像权逗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子冤议,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,611評論 2 353

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