如何使用 SASS mixin 组合 CSS 类?

问题描述

@mixin Box-default {
    $Box: &;
    border: solid 1px;
    padding: 16px;
    
    &--sm {
        padding: 8px;
    }
    
    &--dark {
        background-color: darkgrey;
    }
    
    &--sm &--dark {
        padding: 4px;
    } 
}

.test-Box {
    @include Box-default;
}
<div class="test-Box--sm test-Box--sm">TEST</div>

是否有可能以某种方式在下面制作 CSS 样式?

.test-Box--sm.text-Box--dark

解决方法

解决办法是

&--sm#{#{$box}--dark} {
    padding: 4px;
} 

&--sm#{&}--dark {
  padding: 4px;
}

结果 css 将是

.test-box--sm.text-box--dark

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...