1

私はこのようなCSSルールを持っています:

.c1 .c2 .c3 {
   //some css rules
}

これらのルールを1つのステップで適用できますか?

<div class="c1 c2 c3">
   //some web content
</div>

または、次のような構造を作成する必要があります。

<div class="c1">
  <div class="c2">
    <div class="c3">
      //some web content
    </div>
  </div>
</div>

または多分これを行うためのより簡単な方法がありますか?このルールを単一のdivに適用したいのですが、css定義ファイルに変更を加えることはできません。

4

2 に答える 2

5

.c1 .c2 .c3一致する

<div class="c1">
  <div class="c2">
    <div class="c3">
      //some web content
    </div>
  </div>
</div>

.c1.c2.c3(スペースの違いに注意してください)が一致している間

<div class="c1 c2 c3">
   //some web content
</div>

.c1 .c2(スペースあり)は子孫セレクターです:http ://www.w3.org/TR/CSS2/selector.html#descendant-selectors

一方、.c1.c2(スペースなしで) 2つのクラスセレクターをチェーンすることにより、c1とクラスの両方を含む要素に一致します。c2

http://css-tricks.com/multiple-class-id-selectors/とこ のSOの質問:複数のクラスに基づいて要素を選択する

したがって、あなたの場合、ネストされた構造を作成する必要があるかもしれません。

于 2012-12-14T12:35:13.153 に答える
1

同じcssを3つのクラスに適用する場合は、セレクター間でコンマを使用する必要があります。

.c1, .c2, .c3 {

}

.c1 .c2 .c3は、親子関係を示します。

これは完全に有効です:

<div class="c1 c2 c3">
   //some web content
</div>

その結果、c1とc2およびc3のすべてのcssがdivに適用されます。

何をしたいかによります。単に3つのクラスから1つの要素にcssを割り当てたい場合は、上記を使用してください。スタイリングのためだけに無駄なラッパーを作成することは避けてください。

于 2012-12-14T12:41:55.840 に答える