//$a: Helvetica, sans-serif
//$b: #333
//
//body
//font: 100% $a
//color: $b
//$a: red
//body
//color: $a
$a: red
.box
 color:  $a
 
color前的空格必须,red和$a前的空格必须
 
可以用koala快速执行编译输出
 
嵌套输出方式 nested

1、嵌套输出方式 nested

Sass 提供了一种嵌套显示 CSS 文件的方式。例如

nav {
ul {
margin: 0;
padding: 0;
list-style: none;
} li { display: inline-block; } a {
display: block;
padding: 6px 12px;
text-decoration: none;
}
}

在编译的时候带上参数“ --style nested”:

sass --watch test.scss:test.css --style nested

编译出来的 CSS 样式风格:

nav ul {
margin: 0;
padding: 0;
list-style: none; }
nav li {
display: inline-block; }
nav a {
display: block;
padding: 6px 12px;
text-decoration: none; }

如下图所示:

 
 
 
 
先安装ruby默认c盘。然后add path 勾选--接着gem install sass 安装sass或者使用淘宝ruby gems镜像安装sass
 
gem soureces -r https://rubygems.org/
 
gem soureces -a https://ruby.taobao.org/
 
gem sources -l
 
gem list 查看安装列表-----------------
 
gem sources 查看安装源
 
 
compass 安装
 
 
gem sources -a https://gems.ruby-china.org  安装会报错  协议错误什么的:解决方法:

关于 Windows 下证书无法验证问题 (certificate verify failed)

ruby 没有包含 SSL 证书,所以 https 的链接被服务器拒绝。

解决方法很简单,首先在这里下载证书 http://curl.haxx.se/ca/cacert.pem, 然后再环境变量里设置 SSL_CERT_FILE 这个环境变量,并指向 cacert.pem 文件。

set SSL_CERT_FILE=C:\path\to\cacert.pem
 如果不会协议证书之类的话可以: gem sources -a  http://gems.ruby-china.org
 
 

compass create sassDemo  创建sass环境
 
compass clean删除环境部分内容
 
compass compile 新建
 
require 'compass/import-once/activate'
# Require any additional compass plugins here.
 
# Set this to the root of your project when deployed:
http_path = "/"     
 # 服务器路径
css_dir = "stylesheets"
# css路径
sass_dir = "sass"
# sass路径
images_dir = "images"
# 图片路径
javascripts_dir = "javascripts"
# js路径
 
compass watch  同步监测
 
npm install --global gulp  安装gulp
 
 

1. 全局安装 gulp:

$ npm install --global gulp

2. 作为项目的开发依赖(devDependencies)安装:

$ npm install --save-dev gulp

3. 在项目根目录下创建一个名为 gulpfile.js 的文件:

var gulp = require('gulp');

gulp.task('default', function() {
// 将你的默认的任务代码放在这
});

4. 运行 gulp:

$ gulp

安装Sass和Compass

sass基于Ruby语言开发而成,因此安装sass前需要安装Ruby。(注:mac下自带Ruby无需在安装Ruby!)

window下安装SASS首先需要安装Ruby,先从官网下载Ruby并安装。安装过程中请注意勾选Add Ruby executables to your PATH添加到系统环境变量。如下图:

安装完成后需测试安装有没有成功,运行CMD输入以下命令:

ruby -v
//如安装成功会打印ruby 2.2.2p95 (2015-04-13 revision 50295) [i386-mingw32]

如上已经安装成功。但因为国内网络的问题导致gem源间歇性中断因此我们需要更换gem源。(使用淘宝的gem源https://ruby.taobao.org/)如下:

//1.删除原gem源
gem sources --remove https://rubygems.org/ //2.添加国内淘宝源
gem sources -a https://ruby.taobao.org/ //3.打印是否替换成功
gem sources -l //4.更换成功后打印如下
*** CURRENT SOURCES ***
https://ruby.taobao.org/

Ruby自带一个叫做RubyGems的系统,用来安装基于Ruby的软件。我们可以使用这个系统来 轻松地安装SassCompass。要安装最新版本的SassCompass,你需要输入下面的命令:

//安装如下(如mac安装遇到权限问题需加 sudo gem install sass)gem install sass
gem install compass

在每一个安装过程中,你都会看到如下输出:


Fetching: sass-3.x.x.gem (100%)
Successfully installed sass-3.x.x
Parsing documentation for sass-3.x.x
Installing ri documentation for sass-3.x.x
Done installing documentation for sass after 6 secon
1 gem installed

安装完成之后,你应该通过运行下面的命令来确认应用已经正确地安装到了电脑中:

sass -v
Sass 3.x.x (Selective Steve) compass -v
Compass 1.x.x (Polaris)
Copyright (c) 2008-2015 Chris Eppstein
Released under the MIT License.
Compass is charityware.
Please make a tax deductable donation for a worthy cause: http://umdf.org/compass

如下sass常用更新、查看版本、sass命令帮助等命令:

//更新sassgem update sass

//查看sass版本sass -v

//查看sass帮助sass -h

编译SASS

sass编译有很多种方式,如命令行编译模式、sublime插件SASS-Build、编译软件koala、前端自动化软件codekit、Grunt打造前端自动化工作流grunt-sass、Gulp打造前端自动化工作流gulp-ruby-sass等。

2. 命令行编译;

//单文件转换命令sass input.scss output.css

//单文件监听命令sass --watch input.scss:output.css

//如果你有很多的sass文件的目录,你也可以告诉sass监听整个目录:sass --watch app/sass:public/stylesheets

2-1. 命令行编译配置选项;

命令行编译sass有配置选项,如编译过后css排版、生成调试map、开启debug信息等,可通过使用命令sass -v查看详细。我们一般常用两种--style--sourcemap

//编译格式sass --watch input.scss:output.css --style compact

//编译添加调试mapsass --watch input.scss:output.css --sourcemap

//选择编译格式并添加调试mapsass --watch input.scss:output.css --style expanded --sourcemap

//开启debug信息sass --watch input.scss:output.css --debug-info
  • --style表示解析后的css是什么排版格式;
    sass内置有四种编译格式:nestedexpandedcompactcompressed
  • --sourcemap表示开启sourcemap调试。开启sourcemap调试后,会生成一个后缀名为.css.map文件。

2-2. 四种编译排版演示;

//未编译样式.box {
width: 300px;
height: 400px;
&-title {
height: 30px;
line-height: 30px;
}
}

# nested 编译排版格式

/*命令行内容*/sass style.scss:style.css --style nested

/*编译过后样式*/.box {
width: 300px;
height: 400px; }
.box-title {
height: 30px;
line-height: 30px; }

# expanded 编译排版格式

/*命令行内容*/sass style.scss:style.css --style expanded

/*编译过后样式*/.box {
width: 300px;
height: 400px;
}.box-title {
height: 30px;
line-height: 30px;
}

# compact 编译排版格式

/*命令行内容*/sass style.scss:style.css --style compact

/*编译过后样式*/.box { width: 300px; height: 400px; }.box-title { height: 30px; line-height: 30px; }

# compressed 编译排版格式

/*命令行内容*/sass style.scss:style.css --style compressed

/*编译过后样式*/.box{width:300px;height:400px}.box-title{height:30px;line-height:30px}

3. 软件方式编译;

这里推荐koala&codekit,它们是优秀的编译器,界面清晰简洁,操作起来也非常简单。鉴于koala是免费编译器,简单操作如下图:

 
 
 
 

sass学习笔记--摘录的更多相关文章

  1. Sass学习笔记(补充)

    阅读目录 1. Sass和SCSS的区别 2. @while循环 3. @at-root 4. @content 5. 凸显注释 6. CSS输出样式 7. 重置浏览器样式 8. Sass调试和@de ...

  2. Sass学习笔记之入门篇

    Sass又名SCSS,是CSS预处理器之一,,它能用来清晰地.结构化地描述文件样式,有着比普通 CSS 更加强大的功能. Sass 能够提供更简洁.更优雅的语法,同时提供多种功能来创建可维护和管理的样 ...

  3. sass学习笔记1

    less在处理CSS动画时,非常恶心,决定转向sass了.sass诞生得比less早,只是因为它是ruby写的,因此受众面够少.但我们不需要自己下编译器或使用命令行,我们可以koala这神器 首先几个 ...

  4. 菜鸟的 Sass 学习笔记

    介绍 sass 是什么?? 在sass的官网,它是这么形容给自己的 Sass is the most mature, stable, and powerful professional grade C ...

  5. SASS学习笔记!(持续学习中..)

    工具  : koala 学习网址 : http://www.w3cplus.com/sassguide/syntax.html  http://sass-lang.com/documentation/ ...

  6. Sass学习笔记

    语法 @each $var in <list>//循环就是去遍历一个列表,然后从列表中取出对应的值 @while $types > 0 //循环直到函数不成立 SASS函数 To-u ...

  7. SASS学习笔记(1)

    序 之前稍微看过SASS的文档,但是由于工作中没有涉及,渐渐的搁置了.最近公司新招来一个热情似火的前端,不管什么技术,不管自己能不能hold住,都提出来用一用再说.这样对我也好,跟着这个哥们混妥妥的长 ...

  8. sass学习笔记2

    今天介绍sass在重用代码时最具威力的两个功能.一个是嵌套(Nesting),一个混合(Mixin). 我们在写CSS通过需要多个后代选择器组合到一起才能定位到目标元素上,而这定义过程,此元素的父元素 ...

  9. SASS学习笔记2 —— 语法

    sass有两种后缀名文件:一种后缀名为sass,不使用大括号和分号:另一种是scss文件,这种和我们平时写的css文件格式差不多,使用大括号和分号.在此也建议使用后缀名为scss的文件,以避免sass ...

随机推荐

  1. python爬站长之家写一个信息搜集器

    前言:不知道写什么好,绕来绕去还是写回爬虫这一块. 之前的都爬了一遍.这次爬点好用一点的网站. 0x01: 自行备好requests模块 目标站:http://tool.chinaz.com/ 0x2 ...

  2. javaweb下载文件模板

    import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import javax ...

  3. 给Linux系统/网络管理员的nmap的29个实用例子

    Nmap亦称为Network Mapper(网络映射)是一个开源并且通用的用于Linux系统/网络管理员的工具.nmap用于探查网络.执行安全扫描.网络核查并且在远程机器上找出开放端口.它可以扫描在线 ...

  4. JS实现图片''推拉门''效果

    JS实现图片''推拉门''效果   ''推拉门''动效也可以称作"手风琴"效果,大多数效果实现的思路基本是一样的,下面介绍两种方法,一种是通过改变图片的偏移位置实现移动,另一种是通 ...

  5. iOS 添加WKWebView导致控制器无法释放的问题

    在WkWebView与JavaScript交互中,经常会在原生中注入MessageHandler,app中注入MessageHandler的方法 WKWebViewConfiguration *con ...

  6. C#将制定文件夹下的PDF文件合并成一个并输出至指定路径

    /// <summary> /// 将源路径下的PDF合并至目标路径下 /// </summary> /// <param name="SourcePath&q ...

  7. yii pageTitle与Yii::app()->name的区别

    我们会在main中修改:  'name'=>'傻逼管理系统', 在视图页中:Yii::app()->name时,会输出  傻逼管理系统:可是当我们用$this->pageTitle时 ...

  8. Redis的两种持久化方式-快照持久化和AOF持久化

    Redis为了内部数据的安全考虑,会把本身的数据以文件形式保存到硬盘中一份,在服务器重启之后会自动把硬盘的数据恢复到内存(redis)的里边,数据保存到硬盘的过程就称为"持久化"效 ...

  9. ELK 经典用法—企业自定义日志手机切割和mysql模块

    本文收录在Linux运维企业架构实战系列 一.收集切割公司自定义的日志 很多公司的日志并不是和服务默认的日志格式一致,因此,就需要我们来进行切割了. 1.需切割的日志示例 2018-02-24 11: ...

  10. Ubuntu16.04安装搜狗输入法后有黑边问题的解决方法

    apt-get install compton compton -b