Sass CSS擴充套件語言

2021-10-01 13:59:52 字數 2347 閱讀 5054

sass世界上最成熟、最穩定、最強大的專業級css擴充套件語言!

sass 是一款強化 css 的輔助工具,它在 css 語法的基礎上增加了變數 (variables)、巢狀 (nested rules)、混合 (mixins)、匯入 (inline imports) 等高階功能,這些拓展令 css 更加強大與優雅。使用 sass 以及 sass 的樣式庫(如 compass)有助於更好地組織管理樣式檔案,以及更高效地開發專案

1.將sass編譯成css

sass sass/style.scss:css/style.css
2.自動編譯sass

sass --watch sass:css

>>> sass is watching for changes. press ctrl-c to stop.

3.修改編譯輸出的css格式:nested預設樣式

sass --watch sass:css --style nested/compact/compressed/expanded
4..scss和.sass

.sass縮排式

5.變數

6.巢狀

巢狀時呼叫父選擇器&

巢狀屬性font

7.混合-mixins

@mixin alert($text-color,$background) 

}.alert-warning

轉化之後的css檔案

.alert-warning 

.alert-warning a

8.繼承/擴充套件-inheritance

.alert 

.alert a

.alert-info

css樣式檔案

.alert, .alert-info 

​.alert a, .alert-info a

​.alert-info

9.@import與partials

partials的檔名:sass/_base.scss

在sass/style.scss中匯入:

@import "base";
10.interpolation插入值

$version:"0.0.1";

/*專案版本是:#*/

$name: "info";

$attr: "border";

.alert-# -color:#ccc;

}---------

.alert-info

11.控制指令control directives

@if @for @for @each @while

@if $var==true

$type: monster;

p @else if $type == matador @else if $type == monster @else

}

@for $var from through,或者@for $var from to,區別在於throughto的含義:當使用through時,條件範圍包含的值,而使用to時條件範圍只包含的值不包含的值。另外,$var可以是任何變數,比如$i必須是整數值。

@for $i from 1 through 3  

}/*包含3*/

---------

.item-1

.item-2

.item-3

@each $var in $list

$icons: success error warning;

@each $icon in $icons .png);

}}

@while指令重複輸出格式直到表示式返回結果為false。這樣可以實現比@for更複雜的迴圈,只是很少會用到。

$i: 6;

@while $i > 0

$i: $i - 2;

}-----------

.item-6

.item-4

.item-2

12.自定義函式

$colors:(light:#fff,dark:#000);

@function color($key) 這個key";

} @return map-get($colors,$key);

}body

3 SASS CSS的功能擴充套件

sass是允許在當前css樣式中巢狀另一套css樣式,內層樣式將外層的選擇器作為父選擇器 例如 main p 編譯為 main p main p redbox 有時候需要直接使用巢狀外層的夫選擇器。當給某個元素設定hover樣式時,可以用 代表巢狀外層的父選擇器。例如 a body.firefox ...

Python C語言擴充套件

這裡編寫個簡單例子來說明下具體是如何操作的 建立dll專案,結構如下 test mydll.h mydll.c 標頭檔案 mydll.h ifndef mydll h define mydll h ifdef build dll define dll export declspec dllexpor...

C語言擴充套件Python

python具有很好的開發靈活性,最大的特點是c語言可以對python進行擴充套件,目前工作中正在進行相關的開發,第一篇文章作為基礎.實現c函式,用python api封裝,實現倆個功能,1.say hello,列印hello world 2.calc pv,做加法用算.以下為使用方法 01pyth...