web-dev-qa-db-ja.com

LESSの即時子セレクター

とにかく、LESSにその出力に直接の子セレクター(>)を適用させる方法はありますか?

私のstyle.lessでは、次のようなものを書きたいです:

.panel {
    ...
    > .control {
        ...
    }
}

そして、LESSに次のようなものを生成させます。

.panel > .control { ... }
108
Dave

UPDATE

実際、元の質問のコードは正常に機能します。 >子セレクターだけを使用できます。


答えを見つけました。

.panel {
    ...
    >.control {
        ...
    }
}

「>」と「。」の間にスペースがないことに注意してください。スペースがないと機能しません。

140
Dave

公式な方法:

.panel {
  & > .control {
    ...
  }
}

&は常に現在のセレクターを参照します。

http://lesscss.org/features/#features-overview-feature-nested-rules を参照してください

77
Ricardo Tomasi

正しい構文は次のようになりますが、「&」を使用すると冗長になります。

.panel{
   > .control{
   }
}

ガイドラインが少ない によると、「&」は祖先のパラメーター化に使用されます(ただし、ここではそのような必要はありません)。 this less example&:hover:hoverそれ以外の場合、構文エラーが発生します。ただし、ここで「&」を使用するためのそのような構文要件はありません。そうしないと、すべてのネストは基本的に親を参照しているため「&」が必要になります。

13
Shaurabh Bharti