0

私は次のようなことができます:

#id1 .class1, #id2 .class1{
   color:#FFF;
}

しかし、それはかさばるように見えます。特に、1 つのクラスで共有したい ID が大量にある場合はそうです。

私はむしろ次のようなことをしたい:

#id1, #id2 .class1{
   color:#FFF;
}

明らかにこれは機能しませんが、私のドリフトを理解してください。

考え?

編集:

おそらく、私が炎上する前に、私が CSS フレームワークをオーバーライドしていることに言及するべきでした。ブートストラップまたは zurb ファンデーションを考えてみてください。そのため、クラスを使用するだけでなく、これを行う必要があります。ネイティブ CSS で認識していなかった他の継承セレクターがあるかどうか疑問に思っていました。

4

5 に答える 5

2

これはどうですか?

.class1
{
  color:#FFF;
}
于 2013-04-25T23:18:21.573 に答える
1

CSS の特異性について読むことをお勧めします。

http://css-tricks.com/specifics-on-css-specificity/

まず、CSS フレームワークをオーバーライドする特定の十分なセレクターを作成してみてください。

これには、次のようなことを行うことが含まれる場合があります

html body .class-i-want-to-override { /* ... */ }

!importantそれはあなたの最後の手段であるべきですが、そこに置く必要があるかもしれません.

.my-class { color: pink !important; }

最後に、 SASSのような CSS プリプロセッサを検討することをお勧めします。これにより、より効率的な方法で書くことができます。

#special1,
#special2,
#special3 {
  .override {
    color: pink;
  }
}

これは次のようにコンパイルされます:

#special1 .override, #special2 .override, #special3 .override {
  color: pink;
}
于 2013-04-25T23:24:57.950 に答える
0

クラスを使用しないのはなぜですか?

または、これらの ID を持つ要素に共通のクラスを適用しますか? 要素は ID とクラスを同時に持つことができるため..

以下のコードは基本的な例です。

#commonClass .class1{
   color:#FFF;
}
于 2013-04-25T23:16:40.993 に答える