2

現在-webkit、Less CSSシートに特定の属性があります。これらを更新して、次のような属性mixinsを追加しようとしています。-moz

.transition(@1) {
    -webkit-transition: @1;
    -moz-transition: @1;
}

div {
    .transition(all .5s);
}

上記の例は正常に機能しますが、次のようなものもあります。

div {
    -webkit-transition: border-color .3s, background .3s;
}

また、で定義されているよりも多くの引数があるため、 mixinasを呼び出すことはできません。だから私が今していることはこれです:.transition(border-color .3s, background .3s)mixin

.transition(@1) {
    -webkit-transition: @1;
    -moz-transition: @1;
}
.transition-2(@1, @2) {
    -webkit-transition: @1, @2;
    -moz-transition: @1, @2;
}

div {
    .transition-2(border-color .3s, background .3s);
}

これは面倒です。これまで使用されていなかった多くの引数を使用するときはいつでも、シートに冗長なコードを追加する必要があります。また、他のCSS3プロパティでもこの問題が発生します。たとえば、最初box-shadowに追加する必要がある場合などです。inset

mixinsCSS3のプロパティと同じように、Lessを使用して引数の数を柔軟に宣言する方法はありますか?

4

2 に答える 2

0

あなたは試すことができます

.transition(@1) {
    -webkit-transition: @1;
    -moz-transition: @1;
}
.transition-2(@1, @2) {
    .transition(@1); // this includes all the stuff from transition(@1)
    color:red; // additional stuff
}

あなたの実際の質問に関しては、LESS自体が何らかの「REST」スタイルの引数を渡すとは思わない。

于 2012-06-13T11:51:03.100 に答える