sass 經常使用用法筆記

本文轉載於:猿2048網站sass 經常使用用法筆記javascript

最近公司開發的h5項目,須要用到sass,因此領導推薦讓我去阮一峯大神的SASS用法指南博客學習,爲方便之後本身使用,因此在此記錄。php

1、代碼的重用css

  一、繼承:SASS容許一個選擇器,繼承另外一個選擇器。html

    class2要繼承class1,就要使用@extend命令:java

.class1 {
    border: 1px solid #ddd;
}
.class2 {
    @extend .class1;
    font-size:120%;
}

  二、Mixin:Mixin有點像C語言的宏(macro),是能夠重用的代碼塊。sass

    使用@mixin命令,定義一個代碼塊。使用@include命令,調用這個mixin。ide

  @mixin left {
    float: left;
    margin-left: 10px;
  }
  div {
    @include left;
  }

    mixin的強大之處,在於能夠指定參數和缺省值。使用的時候,根據須要加入參數:函數

   @mixin left($value: 10px) {
    float: left;
    margin-right: $value;
   }
  div {
    @include left(20px);
  }

  三、顏色函數學習

  SASS提供了一些內置的顏色函數,以便生成系列顏色。網站

   lighten(#cc3, 10%) // #d6d65c
  darken(#cc3, 10%) // #a3a329
  grayscale(#cc3) // #808080
  complement(#cc3) // #33c

  四、插入文件

  @import命令,用來插入外部文件

@import "path/filename.scss";

2、高級用法

一、條件語句:

  @if能夠用來判斷

   p {
    @if 1 + 1 == 2 { border: 1px solid; }
    @if 5 < 3 { border: 2px dotted; }
  }

  配套的還有@else命令:

@if lightness($color) > 30% {
    background-color: #000;
  } @else {
    background-color: #fff;
  }

二、循環語句

  for循環:

 @for $i from 1 to 10 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }

  while循環:

 $i: 6;
  @while $i > 0 {
    .item-#{$i} { width: 2em * $i; }
    $i: $i - 2;
  }

  each命令,做用與for相似:

 @each $member in a, b, c, d {
    .#{$member} {
      background-image: url("/image/#{$member}.jpg");
    }
  }

三、自定義函數

  SASS容許用戶編寫本身的函數。

 @function double($n) {
    @return $n * 2;
  }
  #sidebar {
    width: double(5px);
  }
相關文章
相關標籤/搜索