美文网首页
[Sass]前端预处理器sass

[Sass]前端预处理器sass

作者: 泉落云生 | 来源:发表于2018-07-09 14:46 被阅读3次

目的: 使css代码更容易维护,提高开发效率。

安装

  1. 在Windows平台下安装Ruby需要先有Ruby安装包。下载
  2. 在安装过程中选择add ruby executables to your path(若不选中,就会出现编译时找不到Ruby环境的情况)
  3. Ruby安装完成后,在开始菜单中找到新安装的Ruby,并启动Ruby的Command控制面板(Start Command Prompt with Ruby)
  4. 安装好Ruby之后,接下来就可以安装Sass了。打开电脑的命令终端,输入gem install sass
  5. 网络情况比较糟糕,或者下载失败的情况: 先gem sources --remove https://rubygems.org/然后gem sources -a https://ruby.taobao.org/或者gem sources -a http://gems.ruby-china.org
  6. 更新sassgem update sass
  7. 卸载sassgem uninstall sass

编译

命令编译、GUI工具编译和自动化编译

1. 命令编译(路径不能含有中文)

  • 单文件编译sass <要编译的Sass文件路径>/style.scss:<要输出CSS文件路径>/style.css
  • 多文件编译sass sass/:css/

开发过程中,每次保存完都要编译一次会是一件很烦的事情,sass提供了一个watch方法,这样只要代码进行任何修改,都能自动监测到代码的变化,并且直接编译出来:

  • sass --watch scss.scss:style.css -style expanded/compress
  • sass --watch sasspath/.:csspath/. -style expanded
    后缀style,SASS提供四个编译风格的选项:
nested:嵌套缩进的css代码,它是默认值。
expanded:没有缩进的、扩展的css代码。
compact:简洁格式的css代码。
compressed:压缩后的css代码。

调试

使用chrome浏览器的sourcemap功能可以将本地的文件和服务器上的文件关联起来。这样,通过chrome的开发者工具调试网页(如更改一个css属性值)时,本地文件的内容也会相应地发生变化并保存。如果再使用sass的watch命令, 在调试sass文件时,就可以实时保存文件并通过浏览器看到效果。

自动化编译

以 gulp编译为例:

  1. npm i gulp -g(全局)
  2. npm i gulp --save-dev (本地)
  3. 项目根目录下创建一个名为gulpfile.js的文件
  4. 新建文件package.json(效果等同于npm init)
  5. npm i gulp-sass
//gulpfile.js
var gulp = require('gulp');
var sass = require('gulp-sass');

gulp.task('runsass',function(){
    gulp.src('path')
    .pipe(sass())
    .pipe(gulp.dest('path'));
})

//先输出再监听
gulp.task('watchsass',function(){
    gulp.watch('path',function(){    //监听
        gulp.run('runsass')          // 所执行的任务
    })
})

//cmd --> gulp watchsass

书写

  1. 变量
//常用变量
$margin:10px
div{
    margin:$margin
}

//特殊变量
$margin:left
div{
    margin-#{$margin}:10px
}
  1. 嵌套
body{
    #box{
        width:100px;height:100px;background:green;
        &:hover{
            color:red
        }
    }
}

  1. mixin
@mixin bd($size:1px,$style:solid,$color:black){
    border:$size $style $color
}

div{
    @include bd(10px double red)
}
  1. extend 继承
%sad{
    border:1px dashed red
}
div{
    @extend %sad
}

  1. 公用文件
  • 新建_public.scss
  • 具体文件中引入import "public"

相关文章

  • scripts+commonjs+gulp

    css预处理器 Sass https://www.sass.hk/ LESS Stylus Sass 嵌套 嵌套规...

  • sass

    css预处理器 Sass https://www.sass.hk/ LESS Stylus Sass 嵌套 嵌套规...

  • CSS预处理器入门介绍:Sass、Less 和 Stylus

    css 预处理器:Sass、Less 和 Stylus 【Sass】 扩展名:「 *.sass 」和「 *.scs...

  • [Sass]前端预处理器sass

    目的: 使css代码更容易维护,提高开发效率。 安装 在Windows平台下安装Ruby需要先有Ruby安装包。下...

  • Mac OS下更换ruby源

    前端预处理器sass是基于ruby运行的,安装sass时因为ruby默认国外源,下载可能会出现文件丢失及各种错误导...

  • CSS 预处理的区别的深度比较 - Stylus/Sass/Le

    CSS Preprocess Different 在前端界,有三大 CSS 预处理器,分别是 SASS(SCSS)...

  • 很杂的笔记

    关于Sass Sass是什么? Sass是一个CSS预处理器 CSS预处理器是什么? 下面是我照着自己的理解下的内...

  • Koala前端编译工具

    Koala前端编译工具 koala是一个前端预处理器语言图形编译工具,支持Less、Sass、Compass、Co...

  • css预处理器:sass

    Sass Sass简介Sass 是一种css预处理器,CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门...

  • sass的一些小点点

    1、什么是sass? SASS是一种CSS的开发工具,是一种优秀的前端样式预处理器。提供了许多便利的写法,大大节省...

网友评论

      本文标题:[Sass]前端预处理器sass

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