SASS看这里
来源:互联网 发布:js代码反混淆工具 编辑:程序博客网 时间:2024/05/15 04:58
- 变量:$变量名;变量可以嵌套使用
要写一大串指向页面中同一块的样式时,往往需要 一遍又一遍地写同一个ID
#content article h1 { color: #333 }#content article p { margin-bottom: 1.4em }#content aside { background-color: #EEE }
像这种情况,sass可以让你只写一遍,且使样式可读性更高。
#content { article { h1 { color: #333 } p { margin-bottom: 1.4em } } aside { background-color: #EEE }}
父选择器的标识符&
- 群组选择器的嵌套:中间用,隔开
子组合选择器和同层组合选择器:>、+和~:
- 同层相邻组合选择器+选择header元素后紧跟的p元素:
header + p { font-size: 1.1em }
- 同层全体组合选择器~,选择所有跟在article后的同层article元素,不管它们之间隔了多少其他元素:
article ~ article { border-top: 1px dashed #ccc }
- 子组合选择器>选择一个元素的直接子元素:
article section { margin: 5px }
article > section { border: 1px solid #ccc }- 上例中,第一个选择器会选择article下的所有命中*section选择器的元素。第二个选择器只会选择article下紧跟着的子元素*中命中section选择器的元素。
- 同层相邻组合选择器+选择header元素后紧跟的p元素:
嵌套属性:
nav {
border: 1px solid #ccc {
left: 0px;
right: 0px;
}
}
nav {
border: 1px solid #ccc;
border-left: 0px;
border-right: 0px;
}
导入SASS文件:
- @import”sidebar”:即把siderbar.scss文件导入进来了,可以省略后缀
- sass的@import规则在生成css文件时就把相关文件导入进来。这意味着所有相关的样式被归纳到了同一个css文件中,而无需发起额外的下载请求
- 只导入部分scss文件:
- 那些专门为@import命令而编写的sass文件,并不需要生成对应的独立css文件,这样的sass文件称为局部文件
- sass局部文件的文件名以下划线开头:_night-sky.scss
- 你导入时可以不写文件的全名,即省略文件名开头的下划线。(
themes/\_night-sky.scss=>@import "themes/night-sky";
)
- 默认变量值:
$fancybox-width: 400px !default;
- 嵌套导入:
- _blue-theme.scss文件内容如下
aside {
background: blue;
color: white;
}- 现在想把他导入
.blue-theme {@import "blue-theme"}
这个类中
.blue-theme {
aside {
background: blue;
color: #fff;
}
}
- _blue-theme.scss文件内容如下
- 原生的CSS导入:你可以把原始的css文件改名为.scss后缀,即可直接导入了。
- 静默注释:不希望每个浏览网站源码的人都能看到所有注释
body {
color: #333; // 这种注释内容不会出现在生成的css文件中
padding: 0; /* 这种注释内容会出现在生成的css文件中 */
}- css的标准注释格式/* … */内的注释内容亦可在生成的css文件中抹去。
- 注释出现在原生css不允许的地方,如在css属性或选择器中,sass将不知如何将其生成到对应css文件中的相应位置,于是这些注释被抹掉。
body {
color /* 这块注释内容不会出现在生成的css中 */: #333;
padding: 1; /* 这块注释内容也不会出现在生成的css中 */ 0;
}
- 混合器:大段大段的重用样式的代码—使用@mixin标识符定义
@mixin rounded-corners {
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
}
引用
notice {
background-color: green;
border: 2px solid #00aa00;
@include rounded-corners;
}- 传参:
@mixin link-colors($normal, $hover, $visited) {
color: $normal;
&:hover { color: $hover; }
&:visited { color: $visited; }
}a {@include link-colors(blue, red, green);}
最终生成:
a { color: blue; }
a:hover { color: red; }
a:visited { color: green; }
- @import”sidebar”:即把siderbar.scss文件导入进来了,可以省略后缀
- 使用选择器继承来精简CSS
.error {
border: 1px solid red;
background-color: #fdd;
}
.seriousError {
@extend .error;
border-width: 3px;
}
.seriousError不仅会继承.error自身的所有样式,任何跟.error有关的组合选择器样式也会被.seriousError以组合选择器的形式继承
阅读全文
0 0
- SASS看这里
- 看这里看这里看这里
- 看这里
- params 看这里看这里
- HI,myboy,看这里
- MYSQL1067错误看这里
- awk先看这里
- MYSQL1067错误这里看
- 联系看这里
- js基础看这里
- Fragment bug看这里
- 信用提升看这里
- 这里有些东西需要看!
- Windows 10下载看这里
- 二胎要不要,看这里
- Sass
- sass
- sass
- Android多线程编程
- 绝对值c++题解
- python栈
- 访问外部设备寄存器的方法
- 有关进度条的一些写法
- SASS看这里
- Ant-style的匹配原则
- 电商系统
- 随便理解一下JVM
- mybatis中$ 和#的区别
- 后台数据校验hibernate-validator
- shadowsocks搭建及使用
- STL 中string 处理和vector 【转载】
- 理解CSS3 max/min-content及fit-content等width值