SCSS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计者的时间,使得CSS的开发,变得简单和可维护。本文总结了SASS的主要用法。由此日常的一般使用就不需要去看官方文档了。
一、基本用法
1.1 变量
SCSS允许使用变量,所有变量以 $ 开头。
|
|
如果变量需要镶嵌在字符串之中,就必须需要写在 #{} 之中。
|
|
1.2 计算功能
SCSS允许在代码中使用算式:
|
|
1.3 嵌套
SCSS允许选择器嵌套。比如,下面的CSS代码:
|
|
可以写成:
|
|
属性也可以嵌套,比如border-color属性,可以写成:
|
|
注意,border后面必须加上冒号。
在嵌套的代码块内,可以使用 & 引用父元素。比如a:hover伪类,可以写成:
|
|
1.4 注释
SCSS共有两种注释风格
- 标准的CSS注释 / comment /,会保留到编译后的文件。
- 单行注释 // comment,只保留在SASS源文件中,编译后被省略。
/*后面加一个感叹号,表示这是”重要注释”。即使是压缩模式编译,也会保留这行注释,通常可以用于声明版权信息。
|
|
二、代码的重用
2.1 继承
SCSS允许一个选择器,继承另一个选择器。比如,现有 class1:
|
|
class2 要继承 class1,就要使用 @extend 命令:
|
|
2.2 Mixin
Mixin有点像C语言的宏(macro),是可以重用的代码块。
使用 @mixin 命令,定义一个代码块。
|
|
使用 @include 命令,调用这个mixin。
|
|
mixin 的强大之处,在于可以指定参数和缺省值。
|
|
使用的时候,根据需要加入参数:
|
|
下面是一个 mixin 的实例,用来生成浏览器前缀。
|
|
使用的时候,可以像下面这样调用:
|
|
2.3 颜色函数
SCSS提供了一些内置的颜色函数,以便生成系列颜色。
|
|
2.4 插入文件
@import 命令,用来插入外部文件。
|
|
如果插入的是.css文件,则等同于 css 的 import 命令。
|
|
三、高级用法
3.1 条件语句
@if可以用来判断:
|
|
编译为
|
|
配套的还有 @else 命令:
|
|
编译为
|
|
3.2 循环语句
SCSS支持for循环:
|
|
编译为
|
|
也支持while循环:
|
|
编译为
|
|
each命令,作用与for类似:
|
|
编译为
|
|
3.3 自定义函数
SCSS允许用户编写自己的函数。
|
|