工具  : koala

学习网址 : http://www.w3cplus.com/sassguide/syntax.html

       http://sass-lang.com/documentation/Sass/Script/Functions.html#unquote-instance_method

1.sass使用//双斜杠注释向JS一样是单行注释 单行注释不会输出到css中 /**/注释概念相反

2.sacc变量名必须以$开头 后面紧跟着变量名 变量名与值依然是用:分开 $fontSize : 12px;

3.如果属性后面加上 !default 就是设置为默认值(默认值前面可以写上其他值,这样调用的时候就会调用其他值)
例:
$baseLineHeight: 2;
$baseLineHeight: 1.5 !default;
body {
line-height: $baseLineHeight;
}

编译后:

body {
line-height:2;
}

4.特殊变量 定义的变量都为属性值,可直接使用,但是如果变量作为属性或在某些特殊情况下等则必须要以#{}形式

$variables使用。
例:
$borderDirection: top!default;
$baseFontSize:12px !default;
$baseLineHeight: 1.5 !default;

应用在class和属性的时候
.border-#{$borderDirection} {
border-#{$borderDirection}:1px solid #ccc;
}

应用于复杂的属性值
body {
font:#{$baseFontSize}/#{$baseLineHeight};
}

编译结果:
.border-top {
border-top:1px solide #ccc;
}
body {
font:12px/1.5;
}

5.多值变量(List类型和Map类型)

List类型:(类似数组)
可以通过空格 ,逗号(,)或者括号(‘()’)分割多个值
取值用 nth(对象,下标)

例:
定义:
一维数据
$px: 5px 10px 15px 20px;
二维数据
$px: 5px 10px,15px 20px;
$px: (5px 10px) (20px 30px);
使用:
$linkColor: #08c #333 !default;

a {
color:nth($linkColor,1);

&:hover {
color:nth($linkColo,2);
}
}

编译后:

a {
color:#08c;
}
a:hover {
color:#333;
}

Map类型:(类似对象)
必须以键值对 成对出现(key:value,key1:value) 其中value可以使List类型

例:
定义:
$heading:(h1:1rem,h2:2rem,h3:3rem);

使用:
$heading:(h1:1rem,h2:2rem,h3:3rem);
@each header , $size in $heading {
#{header} {
font-size:$size;
}
}
编译后:
h1 {
font-size:1rem;
}
h2 {
font-size:2rem;
}
h3 {
font-size:3rem;
}

SASS学习笔记!(持续学习中..)的更多相关文章

  1. Go学习笔记(持续更中,参考go编程基础,go边看边练)

    使用关键字 var 定义变量,自动初始化为零值.如果提供初始化值,可省略变量类型. 在函数内部,可用更简略的 := 方式定义变量.空白符号_ package main import "fmt ...

  2. GOF 的23种JAVA常用设计模式 学习笔记 持续更新中。。。。

    前言: 设计模式,前人总结下留给后人更好的设计程序,为我们的程序代码提供一种思想与认知,如何去更好的写出优雅的代码,23种设计模式,是时候需要掌握它了. 1.工厂模式 大白话:比如你需要一辆汽车,你无 ...

  3. linux 命令学习(持续完善中...)

    linux 命令学习(持续完善中...) 主要是记录一些开发过程中用到的linux命令,慢慢补充 一.用户 1.添加用户: useradd 用户名 2.设置密码:passwd 用户名 ,然后按照提示输 ...

  4. 并发编程学习笔记(4)----jdk5中提供的原子类及Lock使用及原理

    (1)jdk中原子类的使用: jdk5中提供了很多原子类,它会使变量的操作变成原子性的. 原子性:原子性指的是一个操作是不可中断的,即使是在多个线程一起操作的情况下,一个操作一旦开始,就不会被其他线程 ...

  5. [学习笔记] 在Eclipse中导入项目

    参考前文:[学习笔记] 在Eclips 中导出项目 选择已经导出的文件: 导入之后,项目结构如下: 至此,完成.

  6. CockroachDB学习笔记——[译]CockroachDB中的SQL:映射表中数据到键值存储

    CockroachDB学习笔记--[译]CockroachDB中的SQL:映射表中数据到键值存储 原文标题:SQL in CockroachDB: Mapping Table Data to Key- ...

  7. [学习笔记] 在Eclipse中导出可以直接运行的jar,依赖的jar中的类解压后放在运行jar中

    前文: [学习笔记] 在Eclipse中导出可以直接运行的jar,依赖的jar打在jar包中 使用7z打开压缩包,查看所有依赖的jar都被解压以包名及class的方式存储在了运行jar中,此时jar的 ...

  8. [学习笔记] 在Eclipse中导出可以直接运行的jar,依赖的jar打在jar包中

    本文需要参考前文: [学习笔记] 在Eclipse中导出可以直接运行的jar,依赖的jar在子目录中 上文是导出的运行的依赖jar被放在了子目录中,本文是将依赖jar放在可运行jar的本身,这样发布的 ...

  9. [学习笔记] 在Eclipse中导出可以直接运行的jar,依赖的jar在子目录中

    工程创建可参考前文: [学习笔记] 在Eclipse中使用Hibernate,并创建第一个工程,数据库为Oracle XE 在工程上鼠标右键: 找到java 选择 Runable JAR file N ...

  10. Web安全学习笔记 SQL注入中

    Web安全学习笔记 SQL注入中 繁枝插云欣 --ICML8 权限提升 数据库检测 绕过技巧 一.权限提升 1. UDF提权 UDF User Defined Function,用户自定义函数 是My ...

随机推荐

  1. MyBatis-plus使用

    https://blog.csdn.net/qq_32867467/article/details/82944674 官网: https://mp.baomidou.com/guide/optimis ...

  2. RsaUtils

    参考来源:https://www.cnblogs.com/pcheng/p/9629621.html 里面的这段话,非常好 RSA加密对明文的长度有所限制,规定需加密的明文最大长度=密钥长度-11(单 ...

  3. Vue小项目二手书商城:(五)参考资料

    本项目基于vue2.5.2,如有错误,望指正. 完整程序:https://github.com/M-M-Monica/bukesi Vue.js官方文档:https://cn.vuejs.org/v2 ...

  4. python的GIL

    GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其 ...

  5. [原][译]我们为什么需要另一个c++测试框架?Catch||Why do we need yet another C++ test framework?

    翻译问题来源:https://github.com/catchorg/Catch2/blob/master/docs/why-catch.md 其他辅助博文:从Google Test 转到 Catch ...

  6. R语言并行运算示例 parallel 包

    library(parallel)#example 1cl <- makeCluster(getOption("cl.cores", 2))clusterApply(cl, ...

  7. Java 占位符

    Java的占位符有两种:% 和 {} String 类对象 只能使用 % 有效. MessageFormat 类对象 只能使用 {} 有效. package demo; import java.tex ...

  8. 第 9 章 数据管理 - 076 - 使用 Rex-Ray volume

    使用 Rex-Ray volume 在 docker1 或 docker2 上执行如下命令创建 volume: rexray volume create --size 2 'C:\share\myda ...

  9. win10搭建svn服务

    1,安装服务器版svnhttps://tortoisesvn.net/downloads.html查看版本 svn --version 2,创建版本仓库提倡创建公共仓库,那么可以多次增加项目svnad ...

  10. ajax post json格式返回

    Ajax.aspx: Response.ContentType = "application/json"; Response.Write("{result: '" ...