• Sass学习之路:Sass、Compass安装与命令行


    导言

    CSS不是一门真正意义上的编程语言,很多编程语言理所当然的特性(比如变量),都不被支持。同时再开发模块化的web项目的时候,也要避免相互干扰。为了弥补CSS的这些不足,就产生了CSS预处理器,Sass则是其中的佼佼者。

    什么是Sass

    Sass是最成熟、稳定、强大、专业的CSS扩展语言(官方解释)。直白点,Sass就是一个非常好用的CSS预处理器,为css引入部分编程语言的特性。

    Sass在现阶段,有两种编码的语法,一个是兼容CSS语法的Scss格式文件,一个是Haml、Ruby类似语法的Sass格式文件。一般情况下,我们选用第一种兼容Css语法的Scss文件格式

    什么是Compass

    Compass是基于Sass的一个css创作框架,其实就是基于Sass提供了很多非常实用的函数,有点类库的概念。

    如何安装

    Sass是基于Ruby写的,安装Sass需要先安装Ruby:https://www.ruby-lang.org/zh_cn/downloads/

    在Windows上安装Ruby,需要借助RubyInstall工具:http://rubyinstaller.org/

    安装好Ruby只有,可以使用cmd:ruby -v 查看ruby的版本,如果有输出,表示ruby安装成功。这个时候,则可以使用ruby gem sass来安装Sass,ruby gem compass来安装Compass。

    注意事项:由于gem仓库被墙了,如果想使用的话,需要切换镜像地址,国内可以采用淘宝的ruby镜像:http://ruby.taobao.org。可以通过如下命令实现:

    //移除官方gems
    gem sources --remove https://rubygems.org/
    //添加淘宝的gems   
    gem sources -a https://ruby.taobao.org/
    //查看现有的gems
    gem sources -l
    

    命令行

    //编译Sass
    sass <sass file> <css file>
    
    //Sass与Scss相互转换
    sass-convert <.sass file> <.scss file>
    sass-convert <.scss file> <.sass file>
    
    //监视Sass文件变更,自动编译(可选输出css的风格,参数为style)
    sass --watch <sass file>:<css file> [--style [nested|expanded|compact|compressed]]
    
    //监视文件夹中Sass文件变更,自动编译
    sass --watch <sass folder>:<ouput css folder>
    
    //----------------------Compass--------------
    
    //创建Sass工程
    compass create
    
    //编译sass文件
    compass compile
    
    //监视Sass工程下sass文件变更(可选输出css的风格,参数为output-style)
    compass --watch [--output-style [nested|expaned|compact|compressed]]
    

    更简单的使用方式

    看了以上这么多的步骤,是不是感觉头疼?

    老夫看你天资聪慧,将来必成大器,特为你带来一本秘籍,祝你早日功成!

    在真正的开发环境中,我们一般这么用,结果node+gulp等构建工具。

    首先,需要安装node,然后使用npm安装gulp和gulp-sass。

    接着,编写一个基于gulp的构建脚本,如果是其他构建工具,那么编写对应的脚本即可,gulpfile.js代码如下:

    var gulp = require('gulp'),
      sass = require('gulp-sass');
    
    gulp.task('default', ['sass', 'watch'], function () {
      console.log('Begin watching...');
    });
    
    gulp.task('sass', function () {
      return gulp.src('./*.scss')
        .pipe(sass({
          outputStyle: 'expanded'
        }).on('error', sass.logError))
        .pipe(gulp.dest('./css/'));
    });
    
    gulp.task('watch', function () {
      return gulp.watch('./*.scss', ['sass']);
    });
    

    最后,使用控制台,启动gulp,然后畅快的编写sass代码吧。

  • 相关阅读:
    input表单元素的默认padding不一致问题
    【转】iOS25彩票 幸运转盘
    微分起源
    转载--微分几何为何必然兴起?
    前缀和?or差分序列?
    noip2014 小结
    2019艾瑞(北京)年度高峰会议-数能驱动新变量
    MSF初体验
    s实现指定时间自动跳转到某个页面
    css实现居中
  • 原文地址:https://www.cnblogs.com/humin/p/4656736.html
Copyright © 2020-2023  润新知