• sass的基本使用


        使用sass的前提是安装Ruby,如果是Mac系统,那么免去安装,Windows系统需要自行安装https://www.sass.hk/install/.当安装好以后,直接执行安装sass命令:gem install sass

        sass文件的后缀名是.scss,如果想要将sass文件转为css文件,那么执行:sass xxx.scss即可.sass的编译风格有四种,但是经常使用生产环境中的编译选项(最后一项):

            * nested:嵌套缩进的css代码,它是默认值。

            * expanded:没有缩进的、扩展的css代码。

            * compact:简洁格式的css代码。

         * compressed:压缩后的css代码。执行命令:sass --style compressed xxx.scss xx.css

        为了避免每次都需要手动执行编译,也可以启动监听文件或者目录的方式,每当文件有变动就会自动编译:

    sass --watch in.scss out.css  //watch file

    sass --watch app/sass:app/styles  //watch directory

    1 变量

        1.基本用法是在前面加$,这种仅可以是单变量使用:

    $test: #ccc;

    div {

      color: $test;

    }

        2.另一种是需要和字符串连起来使用的,这时需要借助#{}使用:

    $test: background;

    div {

      #{$test}-color: #fff;

    }

    2 计算

        这个功能很方便,可以和变量搭配起来使用:

    $x: 10%;

    div {

      padding: $x * 3;

      margin: $x * 5;

    }

    3 嵌套

        此功能比较常用,省去了对于写css某元素下的后代设置:

    div{

      p{

        font-size: 16px;

        background: #000;

      }

    }

        除了元素可以嵌套外,属性也是可以嵌套的,注意不可以省去冒号:

    border: {

      radius: 50%;

      color: #eee;

      5px;

      style: solid;

    }

        使用&来引用父元素,伪元素经常使用:

    a{

      &:hover{

        text-decoration: underline;

        color: #999;

      }

    }

    4 注释

        sass有两种注释风格,一种是//,另外一种是标准的css编译/* */;如果需要使用到重要注释,那么需要在第一个/*后加个叹号/*! 重要注释 */:

    5 继承

        继承使用的方式是@extends,允许一个选择器继承另一个:

    .a {

      font-size: 10px;

    }

    .b {

      @extend .a;

      color: #ccc;

    }

    6 mixin

        mixin的使用类似于宏定义,可以重用,而且可以带参数,比如使用@mixin定义一个代码块:

    @mixin right1 { //不带参数

      margin-right: 15px;

      padding-right: 20px;

    }

    @mixin right2($value: 10px,$r) { //带参数,可以给定缺省值

      float: right;

      padding-right: $value;

      margin-#{$r}: 20px;

    }

    div {

      @include right1;

      @include right2(20px,right); //调用,给定实参

    }

    7 颜色函数

        sass提供内置的颜色函数,用于生成系列颜色

    • lighten(#cc3, 10%) // #d6d65c
    • darken(#cc3, 10%) // #a3a329
    • grayscale(#cc3) // #808080
    • complement(#cc3) // #33c

    8 条件语句

    @if opacity > 0.5 {

      color: #000;

    }@else{

      color: #fff;

    }

    9 循环语句

    @for $i from 1 to 10 {

      .border-#{$i} {

        border: #{$i}px solid blue;

      }

    }

    @each $me in a,b,c,d {

      .#{$me}{

        background-image: url(#{$me.jpg});

      }

    }

    $i: 10;

    @while $i > 0 {

      .item-#{$i} {

        2em * $i;

      }

      $i: $i - 2;

    }

    10 自定义函数

    @function diy($n) {

      @return $n * $n;

    }

    .side {

      diy(5px);

     }

  • 相关阅读:
    8.指针小结
    8.指针
    7.数组
    6.结构化程序设计
    python之迭代器
    1.python基础—有这篇文章足够
    python装饰器,细致讲解
    django客户管理系统-使用modelform对HTML标签统一添加样式
    python之md5使用方法
    git干货教程
  • 原文地址:https://www.cnblogs.com/ljwk/p/9605527.html
Copyright © 2020-2023  润新知