sass基礎(chǔ)1

和less一樣,sass也是一門css預(yù)處理語言,但是功能卻更強(qiáng)大。在寫sass前的準(zhǔn)備是ruby和sass的安裝。

安裝及編譯

單一文件編譯

其實(shí)國內(nèi)也有一款很好的編譯軟件叫考拉,簡單易操作,適合新手。
傳送門:https://pan.baidu.com/s/1mh7nZIw#list/path=%2F

基本用法
  • 變量
    sass中變量用$符號(hào)加上變量名稱:
$blue: blue;
$fontSize: 50px;
h1{
    color: $blue;
    font-size: $fontSize;
}

編譯過對(duì)應(yīng)的css:

h1 {
    color: blue;
    font-size: 50px; 
}
  • 運(yùn)算
    sass中變量可以進(jìn)行運(yùn)算:
$fontSize: 50px;
h1{
   font-size: $fontSize + 20px;
}

編譯過對(duì)應(yīng)的css:

h1 {
   font-size: 70px; 
}
  • 嵌套
    sass是支持選擇器嵌套的,邏輯更清晰:
div{
      h1{
          font-size: 70px; 
      }
}

編譯過對(duì)應(yīng)的css:

div h1 {
      font-size: 70px;
 }

在嵌套中,可以使用&來引用父元素,例如在運(yùn)用偽類時(shí):

div{
      & : hover { color: red }
}
代碼重用
  • 繼承
    sass可以讓選擇器能繼承另一個(gè)選擇器的代碼,如下,.box2想要繼承.box1的代碼,用@extend+選擇器進(jìn)行繼承:
.box1{
    width: 100px;
    height: 100px;
}
.box2{
    @extend .box1;
}

編譯過對(duì)應(yīng)的css:

.box1, .box2 {
    width: 100px;
    height: 100px; 
}
  • 混合(Mixins)
    可以類比于js中的函數(shù),sass中的混合以@mixin開頭,用@include調(diào)用,也可以進(jìn)行傳參:
@mixin radius($radius: 20px){
    border-radius: $radius;
}
.box1{
    width: 100px;
    height: 100px;
    @include radius();  //不傳參時(shí)使用默認(rèn)值20px
}
.box2{
    @extend .box1;
    @include radius(50px);  //傳參時(shí)使用參數(shù)50px
}
  • 顏色函數(shù)
    sass中提供了一些內(nèi)置的顏色函數(shù),darken($blue, 10%)表示比$blue深10%:
$blue: blue;
.box1{
    width: 100px;
    height: 100px;
    background-color: darken($blue, 10%);
}

除了darken,還有其他的:
*lighten($blue, 10%)
*darken($blue, 10%)
*grayscale($blue)
*complement($blue)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、SCSS 是 Sass 的新語法格式,從外形上來判斷他和 CSS 長得幾乎是一模一樣,代碼都包裹在一對(duì)大括號(hào)里...
    夜幕小草閱讀 1,812評(píng)論 2 10
  • 一、在什么場(chǎng)景下會(huì)出現(xiàn)外邊距合并?如何合并?如何不讓相鄰元素外邊距合并?給個(gè)父子外邊距合并的范例 在CSS當(dāng)中,相...
    dengpan閱讀 694評(píng)論 0 0
  • CSS 預(yù)處理器技術(shù)已經(jīng)非常的成熟,而且也涌現(xiàn)出了越來越多的 CSS 的預(yù)處理器框架。本文向你介紹使用最為普遍的三...
    Mx勇閱讀 1,449評(píng)論 0 7
  • 基礎(chǔ) 聲明變量 普通變量 默認(rèn)變量 變量覆蓋:只需要在默認(rèn)變量之前重新聲明下變量即可 變量的調(diào)用 局部變量和全局變...
    Jill1231閱讀 1,387評(píng)論 0 1
  • 這是 清水一點(diǎn)通 日更的第 180篇,希望能幫助到你。 我們大部分人無論是在工作,還是在生活中,總有糾結(jié)的時(shí)候。不...
    清水一點(diǎn)通閱讀 962評(píng)論 3 13

友情鏈接更多精彩內(nèi)容