man00 2019-06-28
说明:sass从第三代开始放弃了缩进式风格,并且完全向下兼容普通的css代码,这一代的sass也被称为scss
less
//需安装 less、 less-loader npm i less less-loader --save-dev //style引入 <style lang=”less”></style> //文件引入 @import './index.less'
scss
//需安装node-sass、 sass-loader npm i node-sass sass-loader --save-dev //style引入 <style lang=”scss”></style> //文件引入 @import './index.scss'
stylus
//需安装 stylus 、 stylus-loader npm i stylus stylus-loader --save-dev //style引入 <style lang=”stylus”></style> //文件引入 @import './index.styl'
| 名称 | less | scss | stylus | |
|---|---|---|---|---|
| 变量 | @ | $ | 不能用@开头 | |
| @topcolor:#fff; | $topcolor:#fff; | topcolor= #fff; | ||
| 语法 | 见语法举例 | 见语法举例 | 见语法举例 | |
| 继承 | 见继承举例 | 见继承举例 | ||
| mixin | 见mixin举例 | 见mixin举例 | 见mixin举例 |
语法举例:
/* style.less */
h1 {
color: #0982C1;
}/* style.scss */
h1 {
color: #0982C1;
}/* style.styl */
h1 {
color: #0982C1;
}
h1
color: #0982C1;
h1
color #0982C1继承举例:
//style.less
.message {
color: #333;
}
.success {
.message;
border-color: green;
}//style.scss
.message {
color: #333;
}
.success {
@extend .message; //@extend
border-color: green;
}mixin举例:
//style.less
.error(@borderWidth: 2px) {
border: @borderWidth solid #F00;
}
.login-error {
left: 12px;
.error(5px); // border:5px solid #F00;
}//style.scss
@mixin error($borderWidth: 2px) {
border: $borderWidth solid #F00;
}
.login-error {
left: 12px;
@include error(5px); // @include border:5px solid #F00;
}//style.styl
error(borderWidth= 2px) {
border: borderWidth solid #F00;
}
.login-error {
left: 12px;
error(5px); // border:5px solid #F00;
}看了这两篇文章很收益,做了以上简单总结, 需要学习的可以直接读文章原文。
https://blog.csdn.net/pedroju...
http://www.511yj.com/css-less...