自己可以做電子商務(wù)網(wǎng)站百度查重工具
前言
近來在項(xiàng)目中使用sass,想著學(xué)習(xí)一下,但官方寫的教程太冗雜,所以就有了本文速通Sass的基礎(chǔ)語法
Sass 是 CSS 的一種預(yù)編譯語言。它提供了 變量(variables)、嵌套規(guī)則(nested rules)、 混合(mixins) 等功能,并且完全兼容 CSS 語法。Sass 能夠讓復(fù)雜的樣式表更有條理, 并且易于在項(xiàng)目?jī)?nèi)部或跨項(xiàng)目共享設(shè)計(jì)。
使用變量
變量在Sass中的概念
- 使用美元符號(hào)$
- 注意聲明的順序
- 可以在一個(gè)變量中引入另一個(gè)變量
- 調(diào)用變量時(shí)依然使用美元符號(hào)加變量名
sass
并不想強(qiáng)迫任何人一定使用中劃線或下劃線,所以這兩種用法相互兼容
$demo-color: skyblue;
$demo-border: 1px solid $demo-color;
$demo_border = demo-border
.header-border{border:$demo-border;
}
// 編譯后
.header-border{border:
}
嵌套CSS規(guī)則
使用Sass可以輕松將多個(gè)內(nèi)容嵌套在一起
而不用像CSS一項(xiàng)需要分開寫
.content {article {h1 { color: #333 }p { margin-bottom: 1.4em }}aside { background-color: #EEE }
}/* 編譯后 */
content article h1 { color: #333 }
content article p { margin-bottom: 1.4em }
符號(hào)&
將該符號(hào)后面的內(nèi)容與其父元素直接進(jìn)行連接 適用于各種偽元素
article a {color: blue;&:hover { color: red }
}
/* 編譯后 */
article a {
color: gray;
}
article a:hover{color: red;
}
群組嵌套
子元素會(huì)和父元素一一配對(duì)
.container {h1, h2, h3 {margin-bottom: 8px}
}
.container h1, .container h2, .container h3 { margin-bottom: .8px }
多種選擇器
可以在嵌套層內(nèi)使用多種選擇器
.article {~ article { border-top: 1px dashed #ccc }> section { background: #eee }dl > {dt { color: #333 }dd { color: #555 }}nav + & { margin-top: 0 }
}
// 編譯后
article ~ article { border-top: 1px dashed #ccc }
article > footer { background: #eee }
article dl > dt { color: #333 }
article dl > dd { color: #555 }
nav + article { margin-top: 0 }
嵌套屬性
nav {border: {style: solid;width: 1px;color: #ccc;}
}
// 編譯后
nav {border-style: solid;border-width: 1px;border-color: #ccc;
}
import
- 導(dǎo)入外部的scss文件,不需要添加后綴.scss
- 不可以導(dǎo)入css文件
- Scss編譯時(shí),
sass
的@import
規(guī)則在生成css
文件時(shí)就把相關(guān)文件導(dǎo)入進(jìn)來。 - 可以導(dǎo)入scss文件內(nèi)的局部?jī)?nèi)容 例如 import ./login/abc
!default
假如你寫了一個(gè)可被他人通過@import
導(dǎo)入的sass
庫(kù)文件,你可能希望導(dǎo)入者可以定制修改sass
庫(kù)文件中的某些值。
!default定義。變量被聲明賦值了,那就用它聲明的值,否則用!default
$fancybox-width: 400px !default;
$fancybox-width: 500px;
.fancybox {
width: $fancybox-width;
}
// 編譯后
.fancybox{
width: 500px;
}
靜默注釋
sass
另外提供了一種不同于css
標(biāo)準(zhǔn)注釋格式/* ... */
的注釋語法,即靜默注釋,其內(nèi)容不會(huì)出現(xiàn)在生成的css
文件中。
//普通注釋編譯后不會(huì)顯示在css內(nèi)
/*編譯后會(huì)顯示在css內(nèi) */
混合器(Mixin)
是Sass中用來重用樣式代碼的一種方式。通過混入,我們可以將一組樣式屬性集合成一個(gè)可重用的代碼塊。
@mixin no-bullets {list-style: none;li {list-style-image: none;list-style-type: none;margin-left: 0px;}
}
ul.plain {color: #444;@include no-bullets;
}
// 編譯后
ul.plain {color: #444;list-style: none;
}
ul.plain li {list-style-image: none;list-style-type: none;margin-left: 0px;
}
本文只是帶你速通下基礎(chǔ)語法 更多細(xì)節(jié)請(qǐng)看官網(wǎng)
[[Sass中文官網(wǎng)]]https://www.sass.hk/