sass

same as less, but more powerful than less

Sass编译工具

koala

Sass中的注释

  • 以//开头的注释,不会被编译到css文件中

  • 以/**/包裹的注释会被编译到css文件中

Sass使用

sass --watch input.scss output.css

sass --watch app/sass:public/stylesheets

sass --update inFolder:outFolder

.scss.sass两种后缀,.sass没分号与大括号

grammar

variable

variable grammar

$highlight-color: #F90;
$basic-border: 1px solid black;
$plain-font: "Myriad Pro", "HelveticaNeue", "Liberation Sans";
nav { $width: 100px; width: $width; color: $nav-color; }

嵌套语法

父选择器&

& 符号的使用 — 如果你想写串联选择器,而不是写后代选择器,就可以用到 &了.这点对伪类尤其有用如 :hover 和 :focus

群组选择器的嵌套

有利必有弊,你需要特别注意群组选择器嵌套生成的css.虽然 Sass让你样式表看上去很小,但实际生成css却可能非常大,返会降低网站的速度

子组合选择器和同层组合选择器

嵌套属性

import

使用SASS部分文件

  • Sass局部文件文件名以下划线开头.这样Sass就不会在编译时 单独编译返个文件输出css,而叧把返个文件用作导入themes/_night-sky.scss

  • @import一个局部文件时,可以省略文件名开头的下划线@import "themes/night-sky"

默认变量值

嵌套导入

原生css导入

  • 被导入文件的名字以.css 结尾;

  • 被导入文件的名字是一个 URL 地址(比如 http://www.sass.hk/css/css.css)

  • 被导入文件的名字是 CSS 的 url()值

混合器

混合器css规则

给混合器传参

默认参数值

inherit

继承多个选择器

继承的局限性

虽然能够继承的选择器数量很多,但是也有很多选择器并不被支持继承,如包含选择器(.one .two)或者相邻兄弟选择器(.one+.two)目前还是不支持继承.但若继承的元素是"a",恰巧"a"又有hover状态的样式,那么hover状态的样式也会被继承

继承交叉合并选择

继承带%的东西

继承在指令中的作用域

function

Strings

  • quote

  • unquote

Numbers

  • percentage percentage(2px / 10px)单位必须一致

  • round

  • value

  • ceil

  • floor

  • abs

  • min

  • max

Lists

  • length

  • nth

  • join

  • append

  • zip

  • index

Introspection

  • type-of

  • ...

Colors

  • rgb

  • rgba

  • mix

  • ...

Customize

Sass高级用法

条件

循环

Last updated