【发布时间】:2014-04-14 19:32:22
【问题描述】:
我正在为我的团队创建一个 SASS 混合库,以便在他们选择的 CSS 类中使用。我意识到防止风格污染比我想象的要困难。
如果没有预处理器,我很容易将这两种样式分开
.button { color: red; }
.link { color: blue; }
现在,我想为每种样式创建 mixins
@mixin button()
color: red
@mixin link()
color: blue
看起来很简单,但我无法控制 mixin 将如何分配给类。用户可以选择这样做:
SASS
.btn
@include button()
ul.nav > li > a
@include link()
HTML
<ul class="nav">
<li>
<a href="">Home</a>
</li>
<li>
<a class="btn" href="">Save</a>
</li>
</ul>
现在按钮继承了链接样式。当然,我可以用 CSS 做一些事情来“对抗”这种继承,但我对命名空间混合样式的整体技术更感兴趣(如果可能的话)。
【问题讨论】: