【发布时间】:2015-12-16 04:46:50
【问题描述】:
我正在尝试在 less 中创建一个高度可定制的按钮 mixin。例如,我希望客户能够进入他们的 .less 文件并写入:
.my-button {
.btn(@bg: #FFF, @font: "", @color: #000, @size: 'large'...);
...
}
现在在我的.btn(...) mixin 中,我正在尝试弄清楚如何正确地合并 Less mixin 保护来做我想做的事情。
我猜我可以这样写:
.btn(@bg: #FFF, @font: "", @color: #000, @size: 'large'...) {
// All of my styling here
}
.btn(@bg: #FFF, @font: "", @color: #000, @size: 'large'...) when (@size = 'medium') {
// All of my styling here BUT with new edits for 'medium' sizing
}
但这对我来说似乎非常低效和多余。有没有更好的方法来允许真正可定制的 mixin,但又不让客户端进行多次 mixin 调用?我真的希望能够通过调用.btn(...) 来做到这一点
【问题讨论】:
-
除了 Harry 的回答之外,请注意 mixins 可以相互重用(也就是说,如果
.btnfor medium size 与默认的只有一个属性不同,它可以只设置该属性,然后只需调用默认的.btn来设置其他)。因此,这完全取决于您使用这些 mixin 实际设置的属性。 -
@Harry 是的,这太完美了,抱歉这个周末我不在笔记本电脑旁,所以无法查看
-
@Zach:没关系。不用担心。我只是在检查你是否在寻找额外的东西:)
标签: css less mixins less-mixins