0

JavaScript を使用して CSS を変更する場合、JavaScript は大統領を取る新しいインライン CSS を作成するだけですか? 私はいつもインライン CSS がくだらないと感じていて、もっと良い方法があるかどうか疑問に思っていました。

たとえば、

<div id="author">Author's name</div>これは通常、外部 CSS への参照から緑色に着色されており、それを赤色に変更したい場合は、使用する必要があります

document.getElementById('author').style.color='#FF0000'

インラインスタイリングを使用して外観を変更する必要がありますか?

4

3 に答える 3

2

いいえ、CSS を変更していません。styleプロパティを設定しているだけです。要素のマークアップは、CSSstyleと のようなインライン プロパティの3 つによって決定されますwidth="100"。それらが適用される順序は、少しあいまいになる可能性があります。

styleただし、を使用していない限り、常に CSS を無効にします!important

要素のマークアップを変更するより一般的な方法は、クラスを追加および削除することです。これにより、すべてのスタイル定義を CSS ファイルに保持でき、コードの複雑さが大幅に軽減されます。

あなたがすることができます:

document.getElementById('author').className = "selected";

クラスを追加して、別のマークアップで表示する。

jQuery を使用している場合はaddClass、 andを使用できますremoveClassclassName内部的には、これはプロパティを変更するだけです。独自の実装を作成するのは簡単です。文字列をジャグリングするだけです。

于 2013-02-06T01:39:28.557 に答える
0

インライン スタイルを使用する代わりに、アプリケーション全体のルック アンド フィールを簡単に変更できるように、すべてのスタイルをクラスで定義する方が常にクリーンです。

これを行う最も簡単な方法は、CSS クラスを定義することです。

.reddiv {color: #FF0000}

次に、jqueryを使用してdivの色を赤に簡単に変更できます

$('#author').addClass('reddiv');
于 2013-02-06T01:53:08.030 に答える
0

HTML 要素のスタイルを変更する方法は複数あります。たとえば、jQuery を使用している場合、次のように要素にクラス名を簡単に追加/削除できます。

$("div").addClass("className");
于 2013-02-06T01:41:46.613 に答える