例を挙げて説明します。
次の CSS ルールを想像してください。
.parent {
color: blue;
}
.child {
color: red;
}
.parent .child {
color: white;
}
ここで、 LESS.parent
を使用するのと同等のクラスと別のクラスを作成したいとします。.child
「拡張」を使用すると、目的の一部を達成できます。
.newParent {
&:extend(.parent all);
}
.newChild {
&:extend(.child all);
}
レンダリングします:
.parent,
.newParent {
color: blue;
}
.child,
.newChild {
color: red;
}
.parent .child,
.newParent .child,
.parent .newChild {
color: white;
}
これにより、新しいクラスは古いクラスとほぼ同等になります。
.newParent .newClass
最後のルールセットから欠落しています。
この完全な同等性を達成する方法はありますか?
注: これは、Bootstrap を使用していて、クラスに別の名前を使用したい (フレームワークからの抽象化を高めるため) 人にとって役立つ可能性があります。たとえば、 と の名前を変更する.input-append
と.add-on
します。この場合、両方のクラスに関連するすべてのセレクターを拡張する必要があります。これには、両方が表示されるもの ( など.input-append .add-on { ... }
) も含まれます。
前もって感謝します!