若不想将scss编译成css文件,在scss文件名前面加上下划线
_
。css
使用CSS @import指令
默认状况下@import
在当前目录下需找scss文件加载,若想使用原生css的import指令可使用下面四个规则:web
当@import后面跟上的文件名是以.css结尾的时候;segmentfault
当@import后面跟的是http://
开头的字符串的时候;函数
当@import后面跟的是一个url()函数的时候;url
当@import后面带有media queries
的时候。code
使用@import导入文件
使用@import导入下划线开头文件不须要添加下划线,compass会自动为文件名添加下划线导入。继承
a { &:hover { color: blue; } }
其中&
符号表示链接父类,最终生成代码:字符串
a:hover { color: blue; }
.main-sec { font-family: $main-sec-ff; .headline { font: { family: $main-sec-ff; size: 16px; } } }
定义get
$color-withe: #FFFFFF;
以$
符号开头后面跟上字符串做为变量名,后跟上冒号:
和变量值,冒号是分分隔符,分割变量名和变量值。
使用scss
.main { background: $color-withe; }
直接使用变量名引用即便用变量值。
称为functions
使用时以复制拷贝存在,经过@include方式调用;
定义
@mixin col-6 { width: 50%; float: left; } // 使用 .webdemo-sec { @include col-6; &:hover { background: $color-FFF; } }
生成的代码:
.webdemo-sec { width: 50%; float: left; } .webdemo-sec:hover { background: $color-FFF; }
带参数函数
@mixin col ($width) { width: $width; float: left; } // 使用 .webdemo-sec { @include col(30%); }
带默认参数
@mixin col ($width: 50%) { width: $width; float: left; } // 使用 .webdemo-sec { @include col(); }
使用时以组合声明方式存在,经过@extend方式调用。将继承者选择器插入到被继承者选择器出现的地方:
.error { color: #F00; } .serious-error { @extend: .error; border: 1px #F00 solid; }
注:extend不能够继承选择器序列。
使用%
构建仅用来继承选择器:
%error { color: #F00; } .serious-error { @extend: %error; border: 1px #F00 solid; }
被嵌套内容输出到样式表顶层
.main-sec { font-family: $main-sec-ff; @at-root { .main-sec-headline { font: { famili: $main-sec-ff; size: 16px; } } .main-sec-detail { font-size: 12px; } } } // 生成的代码 .main-sec { font-family: $main-sec-ff; } .main-sec-headline { font-family: sans; font-size: 16px; } .main-sec-detail { font-size: 12px; }