sass语法个人总结

简介: sass语法个人总结

1.变量一般以$开头

$blue:#1875e7;
div{
    color:$blue;
}

变量嵌套在字符串中,需要写在#{}中

$directive:left;
.warpper{
    border-#{$directive}-radius: 5px;
}

2.计算功能

$var =0.1;
body{
    margin: (14px / 2);
    top: 50px + 10px;
    right: $var * 100%;
}

注意这里符号的左右两边要加空格,不然可能会报错。


3.嵌套

//css代码
div h1{
    color: red;
}


//sass代码
div{
    h1{
        color: red;
    }
} 

属性也可以嵌套的,比如border-color属性

p{
    border:{
        color:red;
        style:solid;
    }
}

在嵌套中,可以使用& 引用父元素,比如a:hover,a:after

a{
    &:hover{
        color:#fff;
    }
    &:after{
        content:'';
        clear:both;
        display:block;
    }
}

4.继承

//sass
.class1{
    border: 1px solid #ddd;
}
.class2{
    @extend .class1;
    font-size:120%;
}
//编译后css
.class1,.class2{
    border: 1px solid #ddd;
}
.class2{
    font-size:120%;
}

5.mixin

使用@mixin定义代码块,使用@include使用代码块,@mixin还可以传参,可以利用参数来生成浏览器前缀,不过这些可以用自动化工具gulp完成,所以不推荐吧。

@mixin left{
    float:left;
    margin-left:10px;}div{
    @include left;
}
@mixin right($value : 10px){
    float:right;
    margin-right: $value;}a{
    @include right(20px);
}
@mixin rounded($radius:10px){
    border-radius:$radius;
    -moz-border-radius:$radius;
    -webkit-border-radius:$radius;
}
ul li{
    @include rounded(5px);
}
//... 表示数量可变的参数
@mixin box-shadows($shadow...){
    box-shadow: $shadow;}
div{
    @include box-shadows(0 0 5px #333, 1px 5px 3px #ccc);

6.插入文件

css,sass文件引入都差不多

@import "path/1.scss";
@import "foo.css";

7.条件语句

@if @else可以用来判断

p{
    @if 12+2==14{
        color:#fff;
    }@else{
        color:#000;
    }
}

8.循环语句

for循环

@for  $i form 1 to 10{
    .border-#{$i}{
        border: #{$i}px solid blue;
    }
 }

while循环

$i:6;@while $i>0{
    .item-#{$i}{
        width:4px * $i;
    }
    $i: $i - 2;
}

each命令

@each $member in a,b,c,d{
    .#{$member}{
        background-image: url("img/#{$member}.jpg");
    }
}

9.自定义函数

@function double($n){
    @return $n * 2;
}
#sidebar {
    width: double(5px);
}

目录
相关文章
|
2月前
|
XML 前端开发 JavaScript
JSX 语法详解
【9月更文挑战第2天】本文详细介绍了React框架中核心组件JSX的基本概念与高级用法,包括基本语法、条件与列表渲染等。并通过具体示例讲解了如何避免常见的错误,如忘记闭合标签、未使用`key`属性及属性名大小写问题,帮助读者更好地理解和运用JSX,提升React应用程序的开发质量。
61 4
|
6月前
|
前端开发 开发者
stylus、sass、less区别, Sass 、LESS是什么
【4月更文挑战第1天】stylus、sass、less区别, Sass 、LESS是什么
79 0
|
小程序
uniapp使用scss 嵌套语法
uniapp使用scss 嵌套语法
314 1
|
6月前
|
前端开发 开发者 Ruby
Sass、LESS区别是什么?大家为什么要使用他们?
Sass(Syntactically Awesome Style Sheets)和LESS(Leaner CSS)是两种流行的CSS预处理器,它们在原生CSS的基础上提供了一些额外的功能和语法。
200 1
|
6月前
|
前端开发
Sass 语法详细介绍
Sass 语法详细介绍
73 1
sass/scss 变量与嵌套规则
sass/scss 变量与嵌套规则
77 0
|
前端开发 JavaScript
JSX语法入门
JSX语法入门
47 0
|
前端开发 索引
Sass 内置函数总结
本文总结了 Sass 为我们提供的自带函数,借鉴了bootstrap项目中的一些例子
149 0
|
前端开发 JavaScript API
sass 自定义函数
sass 自定义函数
121 0
|
前端开发
sass的使用方法
sass的使用方法