&parentセレクターが非常に便利であることがわかったのはこれが初めてなので、子要素を変更するためだけに親を再定義する必要はありません。
もちろん、これはLESSで実際に簡単ですが、私は尋ねなければなりません!
<div id="skrollr-body" class="nonav">
<div class="skrollable">
</div>
</div>
#skroller-body {
.skrollable {
margin-top:40px;
.nonav & {
// this parent selector lets me modify
// .skrollable without duplicating it
margin-top:0px;
}
}
}
の出力.nonav &
は
.nonav #skroller-body .skrollable
#skroller-body.nonav .skrollable
代わりに、余分なHTMLマークアップ(ラッパー)なしで何とか取得できるかどうか疑問に思っていますdiv.nonav
か?
現在、親を複製します
#skrollr-body {
margin-top:40px;
left:0;
width:100%;
.skrollable {
margin-top:40px;
position:fixed;
z-index:100;
.skrollable {
position:absolute;
.skrollable {
position:static;
}
}
}
&.nonav {
.skrollable {
margin-top:0px;
}
}
}
または、冗長な出力を保存します。
#skroller-body.nonav .scrollable { margin-top:0px; }
しかし、ここで重要なのは、保守と読み取りが簡単なCSSコードです。