3

コンテキストに基づいて、Mixin 出力を 2 つの異なるものにしようとしています。そのようです:

.seticon(@r,@g,@b) {
    b {
        background-color: rgb(@r,@g,@b);
    }
    &.act b {
        .box-shadow(0 0 5px 1px rgba(@r,@g,@b,0.45));
    }
    &.act.hover b {
        background: #000;
        .box-shadow(inset 0 0 0 3px rgb(@r,@g,@b) !important;
    }
}

.nonreceivable {
    .seticon(@r,@g,@b) {
        b {
            background: #000 !important;
            .box-shadow(inset 0 0 0 2px rgb(@r,@g,@b));
        }
    }
}

.seticon期待どおりに動作するようになりましたが、.nonreceivable .seticon動作していないようです。これはバグですか、それとも私が何か間違ったことをしているのですか、それとも Less の開発者が意図したものではありませんか? 代わりに、これをどのように解決しますか?

4

1 に答える 1

0

クラスはnonreceivable同じ要素または親要素に適用されますか?親の場合は、機能するはずです。&それ以外の場合は、の前に置きます.section

.nonreceivable {
 &.seticon(@r,@g,@b) {
    b {
        background: #000 !important;
        .box-shadow(inset 0 0 0 2px rgb(@r,@g,@b));
    }
}
}
于 2012-04-13T14:13:56.317 に答える