Sass学习笔记(1)

1.变量

Sass中使用$符号定义变量。

  $defaultColor: #fff;

sass可以直接使用变量:

 $defaultColor: #fff;
 body {
    background:$defaultColor; //编译后#fff
 }

注意,sass也有变量作用域,如果你在一个选择器内部定义了一个变量,那么它只在这个选择器内部生效。

 $defaultColor: #fff;
 body {
    $defaultColor: #ccc;
    background:$defaultColor; //编译后#ccc
 }
a{
    color:$defalutColor;//编译后#fff
}

但是可以通过!global定义全局变量

 $defaultColor: #fff;
 body {
    $defaultColor: #ccc !globa;
    background:$defaultColor; //编译后#ccc
 }
a{
    color:$defalutColor;//编译后#ccc
  }

2.函数

sass中,通过@function定义函数,通过@return返回值,不返回样式。
(1)内置函数
官网函数列表
(2)自定义函数
创建一个pxrem得函数


@function pxToRem($px){   //$px为需要转换的字号
    @return $px / 100px * 1rem;   //100px为根字体大小
}
a{
   font-size:pxToRem(16px);
   height:pxTorem(20px) 
}

编译后

a{
  font-size:0.16rem;
  height:0.2rem;
} 

3.语法技巧

(1) 多层嵌套

body{  
  color: black;  
  div {
       color: red;
        span{
              display:block;
          }
    }  
}

编译后

body{
   color:black;
}
body div{
   color:red;
}
body div span{
    display:block;
}

(2) 属性嵌套

a{  
  font: {  
    size: 12px;  
    weight: bold;  
  }  
}

编译后

a{
  font-size:12px;
  font-weight:bold;
}

(3) &符号的使用
Sass中,&表示父元素。

button {  
  &:hover { color: red; }  
}
.main {   
  &-header { color: bule; }  
}

编译后

button:hover{
color:red;
}
.main-header{
color:blue;
}

4.运算

Sass支持数字的加减乘除、取余运算 (+, -, *, /, %), 关系运算<, >, <=, >=以及相等运算==, !=

a{
    font-size:(12px/16px);
    height:10px + 20px;
}

编译后

a{
    font-size:0.75px;
    height:30px;
}

注意:由于原生css语法中就有使用/的地方,所以在sass只有以下情况视为除法运算

  • 值被圆括号包括 ( 10px / 20px)
  • 属于算数表达式的一部分 (10px + 20px/40px)
  • 如果有一个值是变量或函数 $hight/10
  • sass+也可以做字符串拼接
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容