Sass mixin 可高效复用样式,通过 @mixin 定义、@include 调用,支持参数、默认值、可变参数及条件逻辑,提升开发效率与维护性。

在 CSS 中使用 Sass mixin 可以高效复用样式代码,避免重复书写。mixin 类似于函数,可以定义一段可重复使用的样式块,并在需要的地方通过 @include 调用。
定义一个简单的 mixin
使用 @mixin 关键字来定义一个 mixin,后面跟上名称和样式内容。
@mixin flex-center {display: flex;
justify-content: center;
align-items: center;
}
这个 mixin 定义了一个常用的居中布局样式。
在选择器中包含 mixin
使用 @include 来引入已定义的 mixin。
立即学习“前端免费学习笔记(深入)”;
.container {@include flex-center;
}
编译后会生成对应的 CSS:
.container {display: flex;
justify-content: center;
align-items: center;
}
带参数的 mixin 提高灵活性
mixin 支持传参,让样式更通用。
@mixin border-radius($radius) {border-radius: $radius;
-webkit-border-radius: $radius;
-moz-border-radius: $radius;
}
调用时传入具体值:
第一步】:将安装包中所有的文件夹和文件用ftp工具以二进制方式上传至服务器空间;(如果您不知如何设置ftp工具的二进制方式,可以查看:(http://www.shopex.cn/support/qa/setup.help.717.html)【第二步】:在浏览器中输入 http://您的商店域名/install 进行安装界面进行安装即可。【第二步】:登录后台,工具箱里恢复数据管理后台是url/sho
@include border-radius(8px);
}
还可以设置默认参数:
@mixin border-radius($radius: 4px) { ... }这样不传参数时也会应用默认值。
高级用法:可变参数与条件逻辑
Sass mixin 支持 ... 接收多个参数,适合处理类似 box-shadow 或 transition 这类多值属性。
@mixin shadows($shadows...) {box-shadow: $shadows;
}
调用方式:
.card {@include shadows(0 2px 5px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.08));
}
结合 @if 等控制指令,还能实现更复杂的逻辑判断。
基本上就这些。用好 mixin 能大幅提升开发效率,让样式更清晰易维护。注意别过度封装,保持语义明确更重要。









