我使用SASS的方便符号的符号来BEM式改性剂添加到我的班所有属性:获取符号修改为继承父
.box {
display: inline-block;
width: 100px;
height: 100px;
background: magenta;
&--selected {
background: cyan;
}
}
我探索的唯一具有申请单的可能性(例如:<div class="box--selected">...</div>
,而不是<div class="box box--selected">...</div>
)。我想避免使用@extend
,它投射得太宽。目前我正在使用mixins,这很好,但对于每个具有修饰符的类都有一些细节。
我真正想要做的是让&--selected
继承所有从父外壳从父外壳的特性,且仅 - 即忽略.box
是粗心的开发者任何其它类的定义可能已插入。
允许修饰符扩展所有属性并不是个好主意。你的输出css文件会变得越来越大,更多的修改你的。如果元素应该有几个修饰符呢? – 3rdthemagical
@ 3rdthemagical非常有意义。 BEM实际上建议你无论如何都使用基础类和修饰语类 - 这更多的是思想实验/特征窘境。 –