3

私はcssファイルで正規表現置換のような何かをする方法があるのだろうかと思っていましたか?

例:私はこれらのようなセレクターをたくさん持っています:

 #div_23
 #div_45
 #div_8

クラスを使用してスタイルを追加できないとしましょう。CSSファイルで次のようなことを行う方法はありますか?

 #div_[0-9] {background:#000000}
4

2 に答える 2

5

属性を部分的に一致させることができます(css2.1 doc / css3 doc)-ただし、これらのルールはかなり遅いことに注意してください。特にあなたの場合、超低速の属性セレクターを使用してIDを照合する必要があります。これは、を使用すると非常に高速になり#ます。

私はハイフンでつながれたIDとクラスを使用することを好みます。それらはより読みやすく、この方法で次のマッチャーを使用できます。

[att|=val]

あなたのケースに適用:

#div-23
#div-45
#div-8
#div

すべて一致します

[id|=div]{background:#000000}

ただし、CSS3には、ケースに完全に適合する次の属性セレクター(すべての主要なブラウザーでサポートされています)が用意されています。

[att^=val]

だからあなたは書くことができます:

[id^=div_]{background:#000000}

合わせる

#div_23
#div_45
#div_8
/* and */
#div_
于 2012-07-26T09:23:26.853 に答える
4

[id^=div_]これを試してみてください

于 2012-07-26T09:15:57.887 に答える