Sass了解

目錄
  1. 變量 (可以實現(xiàn) 通用樣式復(fù)用)
  2. 嵌套
  3. @mixin 與 @include  混入
  4.  @extend 繼承
  5.  內(nèi)置函數(shù)

本文為本人略讀官網(wǎng)文檔后的大略筆記,實在不適合他人閱讀

Sass(Syntactically Awesome Stylesheets)
最初由 Hampton Catlin 設(shè)計并由 Natalie Weizenbaum 開發(fā)的層疊樣式表語言。
瀏覽器并不支持 Sass 代碼。因此,需要使用一個 Sass 預(yù)處理器將 Sass 代碼轉(zhuǎn)換為 CSS 代碼。

前言:Sass的作用(為什么產(chǎn)生Sass)

CSS 無法實現(xiàn)復(fù)用,不方便維護(例如:對于通用樣式,需要變動時得一個一個找出來并修改)。

Sass 引入樣式復(fù)用機制,并對CSS進行了擴展(增加了 變量、嵌套、混入、繼承、內(nèi)置函數(shù)等特性)。

Sass安裝

安裝
npm install -g sass

查看版本
sass --version

將scss文件轉(zhuǎn)換為css文件
sass a.scss test.css

例 (Sass 文件后綴為 .scss)

======================= scss
/* 定義變量與值 */
$bgcolor: lightblue;
$textcolor: darkblue;
$fontsize: 18px;

/* 使用變量 */
body {
  background-color: $bgcolor;
  color: $textcolor;
  font-size: $fontsize;
}
======================= css
@charset "UTF-8";
/* 定義變量與值 */
/* 使用變量 */
body {
  background-color: lightblue;
  color: darkblue;
  font-size: 18px;
}

/*# sourceMappingURL=test.css.map */

1. 語法

  1. 變量 (可以實現(xiàn) 通用樣式復(fù)用)
$variablename: value;
Sass變量的作用域
    只能在當(dāng)前的層級上有效果(在某個花括號內(nèi)部改變后,僅在該花括號內(nèi)該處以下生效)
    !global關(guān)鍵詞可以將變量設(shè)置為全局(一般定義所有的全局變量在同一個文件_globals.scss,使用 @include包含該文件)

Sass變量可以存儲
    1. 字符串
    2. 數(shù)字
    3. 顏色值
    4. 布爾值
    5. 列表
    6. null 值

例1

======================= scss
$myFont: Helvetica, sans-serif;
$myColor: red;
$myFontSize: 18px;
$myWidth: 680px;

body {
  font-family: $myFont;
  font-size: $myFontSize;
  color: $myColor;
}

#container {
  width: $myWidth;
}
======================= css
body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}

#container {
  width: 680px;
}

/*# sourceMappingURL=test.css.map */

例2(作用域)

======================= scss
$myColor: red;

h1 {
  $myColor: green;   // 只在 h1 里頭有用,局部作用域
  color: $myColor;
}

p {
  color: $myColor;
}
======================= css
h1 {
  color: green;
}

p {
  color: red;
}

/*# sourceMappingURL=test.css.map */

例3 (!global)

======================= scss
$myColor: red;

h1 {
  $myColor: green !global;  // 全局作用域
  color: $myColor;
}

p {
  color: $myColor;
}
======================= css
h1 {
  color: green;
}

p {
  color: green;
}

/*# sourceMappingURL=test.css.map */
  1. 嵌套規(guī)則
類似于html的
<a>
  <p></p>
</a>
嵌套
嵌套屬性

很多CSS 屬性都有同樣的前綴,例如:font-family, font-size 和 font-weight
SCSS可以這樣寫
font: {
  family: Helvetica, sans-serif;
  size: 18px;
  weight: bold;
}

例1

======================= scss
nav {
  ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  li {
    display: inline-block;
  }
  a {
    display: block;
    padding: 6px 12px;
    text-decoration: none;
  }
}
======================= css
nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
nav li {
  display: inline-block;
}
nav a {
  display: block;
  padding: 6px 12px;
  text-decoration: none;
}

/*# sourceMappingURL=test.css.map */

例2(嵌套屬性)

======================= scss
p{
    font: {
      family: Helvetica, sans-serif;
      size: 18px;
      weight: bold;
    }

    text: {
      align: center;
      transform: lowercase;
      overflow: hidden;
    }
}
======================= css
p {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  text-transform: lowercase;
  text-overflow: hidden;
}

/*# sourceMappingURL=test.css.map */
  1. @import 導(dǎo)入文件
@import filename;    
Sass的@import指令會將文件包含在 CSS 中,不需要額外的 HTTP 請求。


通常需要創(chuàng)建以下幾個文件
  1. 顏色文件(存放 通用的顏色)
  2. 字體文件(存放 通用的字體)
  3. 間距文件(存放 通用的間距)
  4. 全局變量文件
  
如果不希望將一個 Sass 的代碼文件編譯到一個 CSS 文件,可以在文件名的開頭添加一個下劃線。這將告訴 Sass 不要將其編譯到 CSS 文件。但是,在導(dǎo)入該文件時不需要添加下劃線。(此處有疑問)

注意:
  1. 包含文件時不需要指定文件后綴,Sass 會自動添加后綴 .scss。
  2. 不要將帶下劃線與不帶下劃線的同名文件放置在同一個目錄下,會忽略帶下劃線的文件

例1

======================= scss (reset.scss文件)
html,
body,
ul,
ol {
  margin: 0;
  padding: 0;
}
======================= scss (test.scss文件)
@import "reset";

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}
======================= css
html,
body,
ul,
ol {
  margin: 0;
  padding: 0;
}

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}

/*# sourceMappingURL=test.css.map */
  1. @mixin 與 @include
@mixin 指令定義一個混入(可以在整個樣式表中重復(fù)使用的樣式)。
@include 指令引入混入。


@mixin mixin-name { 
  property: value; 
  property: value; 
  ... 
} 
selector {
  @include mixin-name;
}

注意:
  1. Sass 的連接符號 - 與下劃線符號 _ 是相同的,也就是 @mixin important-text { } 與 @mixin important_text { } 是一樣的混入。
  2. 混入中也可以包含混入

例1

======================= scss
@mixin important-text {
  color: red;
  font-size: 25px;
  font-weight: bold;
  border: 1px solid blue;
}
.danger {
  @include important-text;
  background-color: green;
}
======================= css
.danger {
  color: red;
  font-size: 25px;
  font-weight: bold;
  border: 1px solid blue;
  background-color: green;
}

/*# sourceMappingURL=test.css.map */

例2(向混入傳遞變量)

======================= scss
/* 混入接收兩個參數(shù) */
@mixin bordered($color, $width) {
  border: $width solid $color;
}

.myArticle {
  @include bordered(blue, 1px);  // 調(diào)用混入,并傳遞兩個參數(shù)
}

.myNotes {
  @include bordered(red, 2px); // 調(diào)用混入,并傳遞兩個參數(shù)
}
======================= css
@charset "UTF-8";
/* 混入接收兩個參數(shù) */
.myArticle {
  border: 1px solid blue;
}

.myNotes {
  border: 2px solid red;
}

/*# sourceMappingURL=test.css.map */

例3(混入傳遞變量,并設(shè)置默認值)

======================= scss
@mixin sexy-border($color, $width: 1in) {
  border: {
    color: $color;
    width: $width;
    style: dashed;
  }
}
p { @include sexy-border(blue); }
h1 { @include sexy-border(blue, 2in); }
======================= css
p {
  border-color: blue;
  border-width: 1in;
  border-style: dashed;
}

h1 {
  border-color: blue;
  border-width: 2in;
  border-style: dashed;
}

/*# sourceMappingURL=test.css.map */

例4(混入傳遞變量,參數(shù)個數(shù)可變)

======================= scss
@mixin box-shadow($shadows...) {
      -moz-box-shadow: $shadows;
      -webkit-box-shadow: $shadows;
      box-shadow: $shadows;
}

.shadows {
  @include box-shadow(0px 4px 5px #666, 2px 6px 10px #999);
}
======================= css
.shadows {
  -moz-box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
  -webkit-box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
  box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
}

/*# sourceMappingURL=test.css.map */

例5(瀏覽器前綴使用混入)

======================= scss
@mixin transform($property) {
  -webkit-transform: $property;
  -ms-transform: $property;
  transform: $property;
}

.myBox {
  @include transform(rotate(20deg));
}
======================= css
.myBox {
  -webkit-transform: rotate(20deg);
  -ms-transform: rotate(20deg);
  transform: rotate(20deg);
}

/*# sourceMappingURL=test.css.map */
  1. @extend 繼承
@extend 父樣式;

例1

======================= scss
.button-basic  {
  border: none;
  padding: 15px 30px;
  text-align: center;
  font-size: 16px;
  cursor: pointer;
}

.button-report  {
  @extend .button-basic;
  background-color: red;
}

.button-submit  {
  @extend .button-basic;
  background-color: green;
  color: white;
}
======================= css
.button-basic, .button-submit, .button-report {
  border: none;
  padding: 15px 30px;
  text-align: center;
  font-size: 16px;
  cursor: pointer;
}

.button-report {
  background-color: red;
}

.button-submit {
  background-color: green;
  color: white;
}

/*# sourceMappingURL=test.css.map */
  1. 內(nèi)置函數(shù)
字符串函數(shù) 說明 舉例
quote(string) 給字符串添加引號 quote(cx) 結(jié)果: "cx"
str-index(string, substring) 返回 substring 子字符串第一次在 string 中出現(xiàn)的位置。如果沒有匹配到子字符串,則返回 null。 str-index(abcd, a) 結(jié)果: 1 (注意:Sass 字符串的起始索引值從 1 開始)
str-insert(string, insertStr, index) 在字符串 string 中 index 位置插入 insertStr str-insert("Hello world!", " cx", 6) 結(jié)果: "Hello cx world!"
str-length(string) 返回字符串的長度 str-length("cx") 結(jié)果: 2
str-slice(string, start, end) 從 string 中截取子字符串,通過 start-at 和 end-at 設(shè)置始末位置,未指定結(jié)束索引值則默認截取到字符串末尾。 str-slice("abcd", 2) 結(jié)果 "bcd" str-slice("abcd", 2, -2) 結(jié)果 "bc"
to-lower-case(string) 將字符串轉(zhuǎn)成大寫 to-upper-case("cx") 結(jié)果: "CX"
unique-id() 返回一個無引號的隨機字符串作為 id。不過也只能保證在單次的 Sass 編譯中確保這個 id 的唯一性。
unique-id() 結(jié)果: uad053b1c
unquote(string) 移除字符串的引號 unquote("cx") 結(jié)果: cx
數(shù)字函數(shù) 說明 舉例
abs(number) 返回一個數(shù)值的絕對值 abs(-15) 結(jié)果: 15
ceil(number) 向上取整 ceil(15.20) 結(jié)果: 16
comparable(num1, num2) 返回一個布爾值,判斷 num1 與 num2 是否可以進行比較 comparable(35px, 2em) 結(jié)果: false comparable(20mm, 1cm) 結(jié)果: true
floor(number) 向下取整 floor(15.80) 結(jié)果: 15
max(number...) 返回最大值 max(5, 7, 9, 0, -3, -7) 結(jié)果: 9
min(number...) 返回最大值 min(5, 7, 9, 0, -3, -7) 結(jié)果: -7
percentage(number) 將數(shù)字轉(zhuǎn)化為百分比的表達形式 percentage(1.2) 結(jié)果: 120
random() 返回 0-1 區(qū)間內(nèi)的小數(shù) random() 結(jié)果: 0.65673
random(number) 返回 1 至 number 之間的整數(shù),包括 1 和 limit。 random(6) 結(jié)果: 4
round(number) 返回最接近該數(shù)的一個整數(shù),四舍五入 round(15.20) 結(jié)果: 15
列表(List)函數(shù) 說明 舉例
Sass 列表是不可變的,因此在處理列表時,返回的是一個新的列表,而不是在原有的列表上進行修改。 列表的起始索引值為 1
append(list, value, [separator]) 將單個值 value 添加到列表尾部。separator 是分隔符,默認會自動偵測,或者指定為逗號或空格。 append((a b c), (d), comma) 結(jié)果: a, b, c, d
index(list, value) 返回元素 value 在列表中的索引位置,找不到返回null。 index(a b c, b) 結(jié)果: 2
is-bracketed(list) 判斷列表中是否有中括號 is-bracketed([a b c]) 結(jié)果: true
join(list1, list2, [separator, bracketed]) 合并兩列表,將列表 list2 添加到列表 list1 的末尾。separator 是分隔符,默認會自動偵測,或者指定為逗號或空格。 bracketed 默認會自動偵測是否有中括號,可以設(shè)置為 true 或 false。 join(a b c, d e f) 結(jié)果: a b c d e f join((a b c), (d e f), comma) 結(jié)果: a, b, c, d, e, f join(a b c, d e f, $bracketed: true) 結(jié)果: [a b c d e f]
length(list) 返回列表的長度 length(a b c) 結(jié)果: 3
list-separator(list) 返回一列表的分隔符類型??梢允强崭窕蚨禾?。 list-separator(a b c) 結(jié)果: "space"
nth(list, n) 獲取第 n 項的值。 nth(a b c, 3) 結(jié)果: c
set-nth(list, n, value) 設(shè)置列表第 n 項的值為 value。 set-nth(a b c, 2, x) 結(jié)果: a x c
zip(lists) 將多個列表按照以相同索引值為一組,重新組成一個新的多維度列表。 zip(1px 2px 3px, solid dashed dotted, red green blue) 結(jié)果: 1px solid red, 2px dashed green, 3px dotted blue
Map(映射)函數(shù) 說明 舉例
Sass Map 是不可變的,因此在處理 Map 對象時,返回的是一個新的 Map 對象,而不是在原有的 Map 對象上進行修改。
map-get(map, key) 返回 Map 中 key 所對應(yīng)的 value(值)。如沒有對應(yīng)的 key,則返回 null 值。 font-sizes:("small": 12px, "normal": 18px, "large": 24px) map-get(font-sizes, "small") 結(jié)果: 12px
map-has-key(map, key) 判斷 map 是否有對應(yīng)的 key,存在返回 true,否則返回 false。 font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-has-key(font-sizes, "big") 結(jié)果: false
map-keys(map) 返回 map 中所有的 key 組成的隊列。 font-sizes: ("small": 12px, "normal": 18px, "large": 24px)map-keys(font-sizes) 結(jié)果: "small", "normal, "large"
map-merge(map1, map2) 合并兩個 map 形成一個新的 map 類型,即將 map2 添加到 map1的尾部 font-sizes: ("small": 12px, "normal": 18px, "large": 24px)font-sizes2: ("x-large": 30px, "xx-large": 36px) map-merge(font-sizes,font-sizes2) 結(jié)果: "small": 12px, "normal": 18px, "large": 24px, "x-large": 30px, "xx-large": 36px
map-remove(map, keys...) 移除 map 中的 keys,多個 key 使用逗號隔開。 font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-remove(font-sizes, "small") 結(jié)果: ("normal": 18px, "large": 24px)
map-values(map) 返回 map 中所有的 value 并生成一個隊列。 font-sizes: ("small": 12px, "normal": 18px, "large": 24px) map-values(font-sizes) 結(jié)果: 12px, 18px, 24px
選擇器函數(shù) 說明 舉例
is-superselector(super, sub) 比較兩個選擇器匹配的范圍,即判斷 super 選擇器是否包含了 sub 選擇器所匹配的范圍,是的話返回 true,否則返回 false。 is-superselector("div", "div.myInput") 結(jié)果: true
selector-append(selectors) 將第二個 (也可以有多個) 添加到第一個選擇器的后面。 selector. selector-append("div", ".myInput") 結(jié)果: div.myInput
selector-extend(selector, extendee, extender)
selector-nest(selectors) 返回一個新的選擇器,該選擇器通過提供的列表選擇器生成一個嵌套的列表。 selector-nest("ul", "li") 結(jié)果: ul li
selector-parse(selector) 將字符串的選擇符 selector 轉(zhuǎn)換成選擇器隊列。 selector-parse("h1 .myInput .warning") 結(jié)果: ('h1' '.myInput' '.warning')
selector-unify(selector1, selector2) 將兩組選擇器合成一個復(fù)合選擇器。如兩個選擇器無法合成,則返回 null 值。 selector-unify("myInput", ".disabled") 結(jié)果: myInput.disabled
simple-selectors(selectors) 將合成選擇器拆為單個選擇器。 simple-selectors("div.myInput") 結(jié)果: div, .myInput
顏色函數(shù) 說明 舉例
rgb(red, green, blue) 創(chuàng)建一個 Red-Green-Blue (RGB) 色。其中 R 是 "red" 表示紅色,而 G 是 "green" 綠色,B 是 "blue" 藍色。 rgb(0, 0, 255);
rgba(red, green, blue, alpha) 根據(jù)紅、綠、藍和透明度值創(chuàng)建一個顏色。 rgba(0, 0, 255, 0.3);
hsl(hue, saturation, lightness) 通過色相(hue)、飽和度(saturation)和亮度(lightness)的值創(chuàng)建一個顏色。 hsl(120, 100%, 50%); // 綠色
hsla(hue, saturation, lightness, alpha) 通過色相(hue)、飽和度(saturation)、亮度(lightness)和透明(alpha)的值創(chuàng)建一個顏色。 hsl(120, 100%, 50%, 0.3); // 綠色帶有透明度
grayscale(color) 將一個顏色變成灰色,相當(dāng)于 desaturate( color,100%)。 grayscale(#7fffd4);結(jié)果: #c6c6c6
complement(color) 返回一個補充色,相當(dāng)于adjust-hue($color,180deg) complement(#7fffd4); 結(jié)果: #ff7faa
invert(color, weight) 返回一個反相色,紅、綠、藍色值倒過來,而透明度不變。 invert(white); 結(jié)果: black
red(color) 從一個顏色中獲取其中紅色值(0-255)。 red(#7fffd4); 結(jié)果: 127
green(color) 從一個顏色中獲取其中綠色值(0-255)。 green(#7fffd4); 結(jié)果: 255
blue(color) 從一個顏色中獲取其中藍色值(0-255)。 blue(#7fffd4); 結(jié)果: 212
hue(color) 獲取一個顏色的飽和度值(0% - 100%)。 saturation(#7fffd4); 結(jié)果: 100%
lightness(color) 獲取一個顏色的亮度值(0% - 100%)。 lightness(#7fffd4); 結(jié)果: 74.9%
alpha(color) 透明度(0-1) alpha(#7fffd4); 結(jié)果: 1
opacity(color) 獲取顏色透明度值(0-1)。 opacity(rgba(127, 255, 212, 0.5); 結(jié)果: 0.5
mix(color1, color2, weight) 把兩種顏色混合起來。 weight 參數(shù)必須是 0% 到 100%。默認 weight 為 50%,表明新顏色各取 50% color1 和 color2 的色值相加。如果 weight 為 25%,那表明新顏色為 25% color1 和 75% color2 的色值相加。
adjust-hue(color, degrees) 通過改變一個顏色的色相值(-360deg - 360deg),創(chuàng)建一個新的顏色。 adjust-hue(#7fffd4, 80deg); 結(jié)果: #8080ff
adjust-color(color, red, green, blue, hue, saturation, lightness, alpha) 這個函數(shù)能夠調(diào)整給定色彩的一個或多個屬性值,包括 RGB 和 HSL 色彩的各項色值參數(shù),另外還有 alpha 通道的取值。這些屬性值的調(diào)整依賴傳入的關(guān)鍵值參數(shù),通過這些參數(shù)再與給定顏色相應(yīng)的色彩值做加減運算。 adjust-color(#7fffd4, blue: 25);
change-color(color, red, green, blue, hue, saturation, lightness, alpha) 跟上面 adjust-color 類似,只是在該函數(shù)中傳入的參數(shù)將直接替換原來的值,而不做任何的運算。 change-color(#7fffd4, red: 255); 結(jié)果: #ffffd4
scale-color(color, red, green, blue, saturation, lightness, alpha) 另一種實用的顏色調(diào)節(jié)函數(shù)。adjust-color 通過傳入的參數(shù)簡單的與本身的色值參數(shù)做加減,有時候可能會導(dǎo)致累加值溢出,當(dāng)然,函數(shù)會把結(jié)果控制在有效的閾值內(nèi)。而 scale-color 函數(shù)則避免了這種情況,可以不必擔(dān)心溢出,讓參數(shù)在閾值范圍內(nèi)進行有效的調(diào)節(jié)。 舉個例子,一個顏色的亮度 lightness 取值在 0% ~ 100% 之間,假如執(zhí)行 scale-color(color,lightness: 40%),表明該顏色的亮度將有 (100 - 原始值) × 40% 的增幅。另一個例子,執(zhí)行 scale-color(color,lightness: -40%),表明這個顏色的亮度將減少 (原始值 - 0) × 40% 這么多的值。所有傳參的取值范圍都在 0% ~ 100% 之間,并且 RGB 同 HSL 的傳參不能沖突。scale-color(hsl(120, 70%, 80%), lightness: 50%) => hsl(120, 70%, 90%) scale-color(rgb(200, 150, 170),green: -40%, blue: 70%) => rgb(200, 90, 229) scale-color(hsl(200, 70%, 80%),saturation: -90%, $alpha: -30%) => hsla(200, 7%, 80%, 0.7)
rgba(color, alpha) 根據(jù)紅、綠、藍和透明度值創(chuàng)建一個顏色。 rgba(#7fffd4, 30%); 結(jié)果: rgba(127, 255, 212, 0.3)
lighten(color, amount) 通過改變顏色的亮度值(0% - 100%),讓顏色變亮,創(chuàng)建一個新的顏色。
darken(color, amount) 通過改變顏色的亮度值(0% - 100%),讓顏色變暗,創(chuàng)建一個新的顏色。
saturate(color, amount) 提高傳入顏色的色彩飽和度。等同于 adjust-color( color, saturation: amount)
desaturate(color, amount) 調(diào)低一個顏色的飽和度后產(chǎn)生一個新的色值。同樣,飽和度的取值區(qū)間在 0% ~ 100%。等同于 adjust-color(color, saturation: -amount)
opacify(color, amount) 降低顏色的透明度,取值在 0-1 之。等價于 adjust-color(color, alpha: amount)
fade-in(color, amount) 降低顏色的透明度,取值在 0-1 之。等價于 adjust-color(color, alpha: amount)
transparentize(color, amount) 提升顏色的透明度,取值在 0-1 之間。等價于 adjust-color(color, alpha: -amount)
fade-out(color, amount) 提升顏色的透明度,取值在 0-1 之間。等價于 adjust-color(color, alpha: -amount)
Introspection 函數(shù) 說明(用于調(diào)試) 舉例
call(function, arguments...) 函數(shù)的動態(tài)調(diào)用,即調(diào)用函數(shù) function,參數(shù)為 arguments,并返回結(jié)果。
content-exists() 查看當(dāng)前的混入是否傳遞 @content 塊。
feature-exists(feature) 檢查當(dāng)前的 Sass 實現(xiàn)是否支持該特性。 feature-exists("at-error"); 結(jié)果: true
function-exists(functionname) 檢測指定的函數(shù)是否存在 function-exists("nonsense") 結(jié)果: false
get-function(functionname, css: false) 返回指定函數(shù)。如果 css 為 true,則返回純 CSS 函數(shù)。
global-variable-exists(variablename) 檢測某個全局變量是否定義。 variable-exists(a) 結(jié)果: true
inspect(value) 返回一個字符串的表示形式,value 是一個 sass 表達式。
mixin-exists(mixinname) 檢測指定混入 (mixinname) 是否存在。 mixin-exists("important-text") 結(jié)果: true
type-of(value) 返回值類型。返回值可以是 number, string, color, list, map, bool, null, function, arglist。 type-of(15px) 結(jié)果: number type-of(#ff0000) 結(jié)果: color
unit(number) 返回傳入數(shù)字的單位(或復(fù)合單位)。 unit(15px) 結(jié)果: px
unitless(number) 返回一個布爾值,判斷傳入的數(shù)字是否帶有單位。 unitless(15px) 結(jié)果: false
variable-exists(variablename) 判斷變量是否在當(dāng)前的作用域下。 variable-exists(b) 結(jié)果: true
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • -------------------------一、控制指令--------------------------...
    夜幕小草閱讀 3,241評論 0 5
  • [1] 四、Sass的控制命令 [2] 4.1 @if @if是一個SassScript,它可以根據(jù)條件來處理樣式...
    沒汁帥閱讀 2,028評論 0 2
  • 基礎(chǔ) 聲明變量 普通變量 默認變量 變量覆蓋:只需要在默認變量之前重新聲明下變量即可 變量的調(diào)用 局部變量和全局變...
    Jill1231閱讀 1,388評論 0 1
  • 一、相關(guān)網(wǎng)站地址 Sass官網(wǎng):http://sass-lang.com/;Sass中文網(wǎng):https://www...
    夏晶晶綠閱讀 998評論 0 0
  • 什么是CSS預(yù)處理器 CSS 預(yù)處理器定義了一種新的語言,其基本思想是,用一種專門的編程語言,為 CSS 增加了一...
    青青玉立閱讀 1,258評論 0 0

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