在我们日常开发中,使用 less/sass 提供的层级样式方便于代码的编写,甚至我们可以使用 sass 中的一些函数来完成一个简单的 css 库来供我们复用 css 代码,这里我会仿照 tailwindcss 来写一些公共代码。我相信,有了这个基础,我们可以对 sass 有更加深入的了解。
安装
使用 yarn 安装
yarn add sass -D
使用 npm 安装
npm i sass -D
使用 pnpm 安装
pnpm i sass -D
变量
sass 的变量都是使用 $
开始,以 ;
结束
// 申明单个值
$primary: #22c55e;
// 申明一组值
$colors: (
"white": #ffffff,
"primary": #367ee8,
"primary-light": #e9f0ff,
);
或者我们可以在一个变量中用另一个变量
下面两种的写法是等效的
$border-color: map-get($colors, "primary");
// or
$border-color: map-get(
$map: $colors,
$key: "primary",
);
注释
scss 支持单行注释,使用单行注释后,在编译好的文件中不会包含备注内容。想要在编译后的 css 中显示注释的话需要使用 css 原本支持的注释方法/**/
循环
使用一组已有的数据
@each $colorKey, $color in $colors {
.text-#{$colorKey} {
color: $color;
}
}
生成的 css 代码
.text-white {
color: #ffffff;
}
.text-primary {
color: #367ee8;
}
.text-primary-light {
color: #e9f0ff;
}
使用一组未定义的数据
@each $var in (left, center, right) {
.text-#{$var} {
text-align: $var;
}
}
生成的代码
.text-left {
text-align: left;
}
.text-center {
text-align: center;
}
.text-right {
text-align: right;
}
评论区
评论加载中...