3

HTMLコードにdivがあります。背景色を赤に変更したいのですが(たとえば、赤ですが、別の色にすることもできます)、Jqueryで.css()メソッドを使用したくないのは、.css()メソッドが次のようになるためです。私のHTMLコード:

<div id="my_div" style="background-color: red"> Elements inside my div </div>

HTMLコードにstyle属性は必要ありませんが、それを使用せずにcssを動的に変更するにはどうすればよいですか?

更新:色が常に赤であるとは限らず、青、黄、紫、または16進色である可能性があるため、クラスを使用できません。

4

5 に答える 5

6

CSS クラスを使用できます。

.red {
  background-color: red;
}

$("#my_div").addClass("red");

複数の色がある場合は、複数のクラスを作成できますが、@pst がコメントで述べたように、これは何らかの形でクラスを使用する一般化の目的を無効にし、css()代わりに使用する方がよい場合があります。

于 2012-09-04T21:29:15.453 に答える
3

JoãoSilvaが提案するように、クラスを割り当てるのが好ましい方法ですが、クラス「red」を割り当てることは、styleプロパティを介して色を設定することとほぼ同じくらい悪いことです。ドキュメントとJavaScriptにまだマークアップ('color = red')があります。

むしろ、関連する名前を割り当てます。これは、たとえば、その要素の状態を示します。

$("div.payment").addClass("overdue");

次に、要素を「期限切れ」として表示する必要があることを伝えるだけで、「期限切れ」がどのように見えるかを定義するのはCSS定義次第です。

于 2012-09-04T21:35:37.380 に答える
1

class="" 属性を設定し、スタイルシートで背景色を定義できます

于 2012-09-04T21:30:49.090 に答える
0

CSS やクラス以外に要素にスタイルを追加する方法はないと思います。

よりクリーンなコードにつながるため、クラス名を追加することを好みます.16進数であっても、事前に色が何であるかを知っていると確信しています.使用するすべての色の個別のクラス名を作成し、追加するだけです.要素へのクラス..それはあなたのコードを明確に定義します..

于 2012-09-04T22:42:38.150 に答える