sass入门指南

Posted Cynthia娆墨旧染

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sass入门指南相关的知识,希望对你有一定的参考价值。

1.简介

sass 它的基本思想是,用一种专门的编程语言,进行网页样式设计,然后再编译成正常的CSS文件。这被叫做“css预处理器”(css preprocessor)。它提供了很便利的语法,节省了我们写css的时间。

 

 

2.安装

  (1)首先确保你的电脑安装了 ruby (传送门 https://www.ruby-lang.org/zh_cn/downloads/)

// 控制台查看是否安装成功
suby -v

 

    (2)安装 sass

gem install sass

 

 

3.使用

  (1)用编辑器 新建文件夹 demo ,在demo里新建文件 demo.scss ,代码如下

.list_1 {
    ul {padding-left: 1.6rem;}
    li {
        border-bottom: 1px solid #ddd;padding-right: 1.6rem;
        a {
            display: block;height: 4rem;line-height: 4rem;overflow: hidden;font-size: 1.4rem;
            background:url("../image/icon_goto.png") right center no-repeat;
            background-size: auto 1.4rem;
            padding-right: 1.5rem;
        }
        time {float: right;color: #999;}
    }
}

  (2)控制台 进入demo文件夹下

// demo.css 是生成后的css文件名
sass demo.scss demo.css

  

 

4.sass提供的四种编译风格

// nested:嵌套缩进的css代码,它是默认值。
// expanded:没有缩进的、扩展的css代码。
// compact:简洁格式的css代码。
// compressed:压缩后的css代码。

  比如

sass --style compressed test.sass test.css

  

  

5.sass 语法

  (1)变量

// SASS允许使用变量,所有变量以$开头。
     
     $blue : #1875e7; 

  div {
   color : $blue;
  }
// 如果变量需要镶嵌在字符串之中,就必须需要写在#{}之中。
  
      $side : left;

  .rounded {
    border-#{$side}-radius: 5px;
  }

 

  (2)计算功能

   body {
    margin: (14px/2);

    top: 150px + 100px;

    right: $var * 5%;
  }

  

  (3)嵌套的写法

    div {
    h1{
      color:red;
    }
  }
// 属性也可以嵌套,比如border-color属性,注意后面必须加上冒号,可以写成:
   p {
    border: {
      color: red;
    }
  }

  (4)注释

    /*! 
    重要注释!也会保留这行注释,通常可以用于声明版权信息
  */


/* comment */ 会保留到编译后的文件


// comment,只保留在SASS源文件中,编译后被省略。

  (5)代码的重用

// 单个属性重用
.class1 {border: 1px solid #ddd;} .class2 {@extend .class1;font
-size:120%;}
// 重用的代码块

     @mixin left {
    float: left;
    margin-left: 10px;
  }


div {
    @include left;
   }

  

  (6)// 指定参数和缺省值

@mixin left($value: 10px) {
    float: left;
    margin-right: $value;
}

div {
    @include left(20px);
  }

 

  (7)颜色函数(内置)

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

  

  (8)插入外部文件

 @import "path/filename.scss";

  

  (9)条件语句

// @if可以用来判断:
     p {
        @if 1 + 1 == 2 { border: 1px solid; }
        @if 5 < 3 { border: 2px dotted; }
      }
// 配套的还有@else命令:
@if lightness($color) > 30% {
    background-color: #000;
  } @else {
    background-color: #fff;
  }
//支持for循环:
@for $i from 1 to 10 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }
// while循环
    $i: 6;
  @while $i > 0 {
    .item-#{$i} { width: 2em * $i; }
    $i: $i - 2;
  }
// each命令,作用与for类似:
@each $member in a, b, c, d {
    .#{$member} {
      background-image: url("/image/#{$member}.jpg");
    }
  }

  

  (10)自定义函数

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

 

 

以上是关于sass入门指南的主要内容,如果未能解决你的问题,请参考以下文章

SCSS/SASS 指南

Sass入门:第二章

laravel 中CSS 预编译语言 Sass 快速入门教程

sass入门

markdown 打字稿...编码说明,提示,作弊,指南,代码片段和教程文章

sass入门指南