【发布时间】:2014-10-30 22:26:45
【问题描述】:
如何在现有库的基础上使用 css mixins?示例:假设您要基于引导程序 btn btn-success 类创建一个新的 css 类。它可能看起来像:
.disabled-button {
@mixin .btn;
@mixin .btn-success;
@mixin .disabled;
color:red;
}
当你自己定义类 btn 或 btn-success 时,Less/Sass 能够做这样的事情,但是当它来自引导程序(或其他 css 框架)时,你如何处理它?
【问题讨论】:
-
嗯,简而言之,一般来说,您的类与框架中定义的类没有区别。但魔鬼在细节中:例如 Bootstrap
.btn并没有真正定义为单个不同的规则集,但它实际上是一组应用于多个(很多!)选择器的几种样式,这些选择器分布在整个源代码中。因此,当您尝试将它们用作 mixin 时,您很可能不会得到您期望的结果。有关更多详细信息,请参阅此评论集: -
问题是什么,究竟是什么?你试过这个吗?有错误吗?
-
我一直在寻找一种方法来封装我的自定义类后面的引导程序等框架。例如。我可能想改天使用我的课程
disabled-button使用不同的框架(purecss),所以我的想法是我可以使用我的课程并使用 mixins 来解决这个问题。如果这不可能,则意味着 html 必须与手头的 css 框架耦合。这更像是一个关于 CSS 的架构问题。
标签: css twitter-bootstrap twitter-bootstrap-3 sass less