Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ JavaScriptによる要素スタイルの変更 | インタラクティブなWeb開発のためのDOM操作
JavaScriptロジックとインタラクション

bookJavaScriptによる要素スタイルの変更

メニューを表示するにはスワイプしてください

ウェブ開発では、要素のスタイルを動的に変更する必要がよくあります。JavaScript では、要素の見た目を変更する主な方法として、style プロパティを使ったインラインスタイルの更新と、classList を使ったクラスの管理の2つがあります。

style プロパティを使ったインラインスタイルの変更

JavaScript の style プロパティを使用すると、HTML 要素のインライン CSS を直接変更できます。この方法では、個々の CSS プロパティを細かく制御できますが、インラインスタイルのみに適用され、その特定の要素だけに影響します。

要素の style オブジェクトにドット記法を使って、個々の CSS プロパティを変更できます。プロパティ名はキャメルケース(例:backgroundColorbackground-color ではなく)で記述します。

index.html

index.html

index.css

index.css

index.js

index.js

copy

style プロパティは、#box 要素のインラインスタイルを変更するために使用。各 CSS プロパティは個別の JavaScript プロパティ(例:box.style.backgroundColor)としてアクセスでき、要素のスタイルの特定部分を動的に変更可能。

classList による CSS クラスの追加と削除

classList プロパティは、CSS クラスの追加・削除・切り替えによって要素のスタイルを管理する、より柔軟で強力な方法。インラインスタイルを直接変更するよりも保守性が高く、外部 CSS ファイルを活用してスタイルと JavaScript ロジックを分離可能。

index.html

index.html

index.css

index.css

index.js

index.js

copy

classList.toggle() は、ボタンがクリックされたときに highlight クラスを追加または削除するために使用。インラインの style 属性を煩雑にせず、保守性の高い事前定義された CSS ルールに依存。

実践例:テーマの切り替え

ユーザーが classList を使ってライトテーマとダークテーマを切り替えられる実践例。

index.html

index.html

index.css

index.css

index.js

index.js

copy

classList.replace() は、現在の状態に基づいて light-theme クラスと dark-theme クラスを入れ替えるために使用。

1. 要素のインラインスタイルを変更するために使用されるプロパティはどれか。

2. JavaScript を使って、ID が <div>box の背景色を coral に変更するにはどうすればよいか。

3. 次のコードは何を行いますか?

question mark

要素のインラインスタイルを変更するために使用されるプロパティはどれか。

正しい答えを選んでください

question mark

JavaScript を使って、ID が <div>box の背景色を coral に変更するにはどうすればよいか。

正しい答えを選んでください

question mark

次のコードは何を行いますか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 2.  12

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 2.  12
some-alt