sass学习
文章目录
sass的文件后缀
sass文件后缀有两种即sass和scss
sass:不使用大括号和分号
scss:使用大括号和分号
1 | //sass语法 |
1 | //scss语法 |
文件导入
1.导入sass文件可以省略文件后缀
2.导入sass文件会在编译是合并为一个文件
3._base.scss导入时可以不写下划线即可以@import base
4.导入css文件以@import方式存在,跟普通CSS导入样式文件一样
1 | //a.scss |
1 | //b.scss |
1 | /*编译后*/ |
注释
/**/和//
单行注释不会输入到编译产生的CSS中
1 | /** |
1 | /** |
变量
普通变量
普通变量定义之后可以在全局范围内使用。
1 | //sass style |
默认变量
sass的默认变量仅需要在值后面加上!default即可。
1 | //sass style |
特殊变量
如果变量作为属性或在某些特殊情况下等则必须要以#{$variables}形式使用。
1 | //sass style |
多值变量
多值变量分为list类型和map类型,list类型有点像js中的数组,而map类型有点像js中的对象
1 | //sass style |
1 | //sass style |
嵌套
选择器的嵌套和属性的嵌套
选择器嵌套
1 | //sass style |
属性嵌套
1 | //sass style |
混合(mixin)
无参数
1 | //sass style |
有参数mixin
1 | //sass style |
多个参数mixin
调用时可直接传入值,如@include传入参数的个数小于@mixin定义参数的个数,则按照顺序表示,后面不足的使用默认值,如不足的没有默认值则报错。除此之外还可以选择性的传入参数,使用参数名与值同时传入。
1 | //sass style |
多组值参数mixin
在变量后加三个点表示,如$variables…。
1 | //sass style |
继承
继承@extend
1 | //不管是否使用了@extend去继承相应的样式,都会解析出来所有的样式 |
占位选择器%
1 | //占位选择器%如果不调用则不会有任何多余的css文件 |
函数
1 | //sass style |
运算
1 | //可以对数值型的Value(如:数字、颜色、变量等)进行加减乘除四则运算。运算符前后需留一个空格 |
条件判断及循环
if判断@if判断
1 | //sass style |
三目判断
1 | //if($condition, $if_true, $if_false) |
for循环
1 | // @for $i from <start> through <end> $i表示变量 through包括end这个数 |
循环,@each循环
1 | //@each $var in <list or map>。其中$var表示变量,而list和map表示list类型数据和map类型数据 |
1 | //多字段list循环 |
1 | //多个字段map数据循环 |