Sass的控制命令(迴圈)

2022-07-31 05:30:22 字數 3720 閱讀 8765

@if

@if指令是乙個sassscript,它可以根據條件來處理樣式塊,如果條件為true返回乙個樣式塊,反之false返回另乙個樣式塊。在sass中除了@if,還可以配合@else if@else一起使用。

1

$lte7: true;

2$type: monster;

3.ib9}

10p @else if $type == matador @else if $type == monster @else 20}

編譯成css:

1

//css style

2.ib

7p

假設要控制乙個元素隱藏或顯示,我們就可以定義乙個混合巨集,通過 @if...@else... 來判斷傳進引數的值來控制display的值。如下所示:

1

//scss

2@mixin blockorhidden($boolean:true) ";

5display: block;6}

7@else ";

9display: none;10}

11}12.block

15.hidden

編譯出來的css:

1

.block

4.hidden

@for迴圈(上)

在 sass 的@for迴圈中有兩種方式

@for $i from through

@for $i from to

這兩個的區別是關鍵字through表示包括end這個數,而to不包括end這個數。

從  開始迴圈,到 

結束如下**,使用through關鍵字的例子:

1

@for $i from 1 through 3 3}

編譯出來的 css:

1

.item-1

4.item-2

7.item-3

從  開始(此處示例是1),一直遍歷到 

(此處示例是3)。包括 

的值。to關鍵字的例子:

1

@for $i from 1 to 3 3}

編譯出來的 css:

1

.item-1

4.item-2

迴圈從 

開始,一直遍歷迴圈到 

結束。這種形式的迴圈只要碰到 

就會停止迴圈(將不會遍歷 

值)。@for迴圈(下)

@for應用在網格系統生成各個格仔 class 的**:

1

//scss

2$grid-prefix: span !default;

3$grid-width: 60px !default;

4$grid-gutter: 20px !default;

5%grid

10@for $i from 1 through 12 # 15}

編譯出來的 css:

1

.span1, .span2, .span3, .span4, .span5, .span6, .span7, .span8, .span9, .span10, .span11, .span12

6.span1

9.span2

12.span3

15.span4

18.span5

21.span6

24.span7

27.span8

30.span9

33.span10

36.span11

39.span12

@for

迴圈指令除了可以從小數值到大數值迴圈之外,還可以從大數值迴圈到小數值。而且兩種形式都支援(遞增或遞減)

@while迴圈

@while指令也需要sassscript表示式(像其他指令一樣),並且會生成不同的樣式塊,直到表示式值為false時停止迴圈。這個和@for指令很相似,只要@while後面的條件為true就會執行。

@while指令簡單用例:

1

//scss

2$types: 4;

3$type-width: 20px;

4@while $types > 0

8$types: $types - 1;9}

編譯出來的 css:

1

.while-4

4.while-3

7.while-2

10.while-1

@each迴圈

@each迴圈就是去遍歷乙個列表,然後從列表中取出對應的值。

@each迴圈指令形式:

@each $var in

$var

就是乙個變數名, 

是乙個sassscript表示式,他將返回乙個列表值。變數 $var

會在列表中做出遍歷,並且遍歷出與 $var

對應的樣式塊

這有乙個 @each 指令的簡單示例:

1

$list: adam john wynn mason kuroir;//$list 就是乙個列表23

@mixin author-images .png") no-repeat;7}

8}9}

1011

.author-bio

編譯出css:

1

.author-bio .photo-adam

4.author-bio .photo-john

7.author-bio .photo-wynn

10.author-bio .photo-mason

13.author-bio .photo-kuroir

Sass 的控制命令

一 sass 的函式指令 1 if if 指令是乙個 sassscript,它可以根據條件來處理樣式塊,如果條件為 true 返回乙個樣式塊,反之 false 返回另乙個樣式塊。在 sass 中除了 if 之,還可以配合 else if 和 else 一起使用。假設要控制乙個元素隱藏或顯示,我們就可...

2 1 Sass的控制命令

if if 指令是乙個 sassscript,它可以根據條件來處理樣式塊,如果條件為 true 返回乙個樣式塊,反之 false 返回另乙個樣式塊。在 sass 中除了 if 之,還可以配合 else if 和 else 一起使用。假設要控制乙個元素隱藏或顯示,我們就可以定義乙個混合巨集,通過 if...

2 1 Sass的控制命令

if 指令是乙個 sassscript,它可以根據條件來處理樣式塊,如果條件為 true 返回乙個樣式塊,反之 false 返回另乙個樣式塊。在 sass 中除了 if 之,還可以配合 else if 和 else 一起使用。假設要控制乙個元素隱藏或顯示,我們就可以定義乙個混合巨集,通過 if.el...