美文网首页
sass基本使用

sass基本使用

作者: pity_bbec | 来源:发表于2019-08-21 14:43 被阅读0次

    主要用代码方式列一下sass中经常使用的一些基本的方法

    1.变量:跟es6中的let一样具有块级作用域,必须先定义后使用
    $color:red;
    $fontSize:16px;
    $color:blue;
    body{   
        background:$color;    //blue    使用前最后一处声明有效,前边的值被覆盖
        font-size:$fontSize
    }
    $color:green;
    
    2.嵌套:
    //例1
    .data{
        & > ul{                        //.data > ul       
            .li{
                &:hover{}            //.data ul .li:hover        &:父选择器的标识符
                body.ie & {}         //body.id .data >ul .li
                &-title{}            //.data ul .li-title{}
            }
        }
        h1,h2{}        //.data h1, .data h2{}          //群组选择器
    }
    //例2        嵌套属性
    .nav{
        border: {
            style:solid;
            width:1px;
            color:red;
        }
    }    //==>.nav{border:1px solid red;}
    //例3
    .nav{
        border: 1px solid #ccc {
          left: 0px;
          right: 0px;
      }
    }       // ==>.nav{border: 1px solid #ccc; border-left:0px;border-right:0px;}
    
    3.导入sass文件:

    css @import:在css文件中执行到@import时浏览器去下载css文件=》页面加载慢
    sass @import:生成css文件时把文件导入进来,跟原有文件合成一个文件=》无需发起额外请求下载
    局部文件:以下划线开头,不生成css文件,只用来被引用,可被多文件引用

    例1:想导入style/_night-sky.scss    =>@import "style/night-sky"
    
    例2:导入文件又要修改文件中的全局变量:    !default
    $c:pink;
    @import 'src/assets/css/ab';
    _ab.scss文件:        $c: green !default;
                        .cont {color: $c;}
    
    4.注释:
    .a{}    /*这种注释内容会出现在生成的css文件中*/
    .b{}    //这种注释不会出现在生成的css文件中,叫做:静默注释
    .c{color/*这块注释也不会出现在生成的css文件中*/ :red;}   
    
    5.混合器:
    @mixin link-colors($normal:blue, $hover:red, $visited:green) {    //声明
        color: $normal;
        &:hover { color: $hover; }
        &:visited { color: $visited; }
    }
    @include link-colors( $normal: blue, $visited: green, $hover: red);    //调用1
    @include link-colors( $hover: yellow);    //调用2
    @include link-colors( green);    //调用3
    
    6.继承:
    .redC{
        background:red;
        margin:10px;
    }
    body{
        @extend .redC;
    }
    
    小技巧

    1.#{}:可以添加动态的值

    @mixin mar($dir,$size){
        margin-#{$dir} : $size;
    }
    .cont{
        @include mar('left',20px);    //margin-left:20px;
    }
    

    相关文章

      网友评论

          本文标题:sass基本使用

          本文链接:https://www.haomeiwen.com/subject/edgbsctx.html