JavaScriptでCSSを操作して変更する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptでCSSを操作して変更する方法について現役エンジニアが解説しています。JavaScriptではstyleプロパティを直接変更する方法、クラス名を変更する方法、スタイルシートを読み込む方法でCSSを変更することが可能です。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

JavaScriptで配列内の値を加算する方法について、TechAcademyの現役エンジニアが実際のコードを使って初心者向けに解説します。

 

JavaScriptについてよく分からないという方は、JavaScriptとは何なのか解説した記事をみてみましょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、JavaScript/jQuery講座の内容をもとにしています。

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

JavaScriptでCSSを操作して変更する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

JavaScriptでCSSを操作する方法の種類

JavaScriptでCSSを操作するには大きく分けて3つの方法があります。

  • styleプロパティを直接変更する方法
  • CSSのクラス名を変更する方法
  • スタイルシートを読み込む方法

です。

では、それぞれの方法を詳しくみていきましょう。

 

styleプロパティの直接変更による方法

JavaScriptでHTMLから取得した要素は、styleプロパティを持ちます。

このstyleプロパティを変更することで要素の見た目を変えることが可能です。

 

[PR] JavaScript・jQueryで挫折しない学習方法を動画で公開中

CSSクラス名変更による方法

CSSで特定のクラスに対してスタイルを定義している場合があります。

この場合では、要素のclassを変更することでも見た目を変えることが可能です。

 

スタイルシートの読み込みによる方法

JavaScriptでstyleタグを作成して、その中にCSSを文字列で記述することができるでしょう。

タグをHTMLに追加することで、スタイルを読み込ませることが可能です。

 

実際のコードを書いてみよう

始めに、以下のようなHTMLを記述します。

<button class="primary">Click</button>
<style>
button {
  color: white;
}
.primary {
  background-color: blue;
}
.secondary {
  background-color: red;
}
</style>

JavaScriptでCSSを変更するためのサンプルボタン

styleプロパティを直接変更するコードを記述します。

document.querySelector('.primary').style.backgroundColor = 'red'

JavaScriptでCSSを変更させたサンプルボタン

次は、クラス名を変更して見た目を変更するコードを記述しました。

const button = document.querySelector('.primary')
button.classList.remove('primary')
button.classList.add('secondary')

JavaScriptでCSSを変更させたサンプルボタン

最後にstyleタグを作成して、そのスタイルを読み込ませるコードを使用しましょう。

const style = document.createElement('style')
style.innerHTML = `
  .primary {
    background-color: red;
  }
`
document.body.appendChild(style)

JavaScriptでCSSを変更させたサンプルボタン

執筆してくれたメンター

メンター久保田さん

Webシステム開発が中心のシステムエンジニア。

HTML、CSS、JavaScript(React、Vue.js)、PHP、Javaが守備範囲。

最初に選ぶポケモンは炎タイプ。

 

大石ゆかり

JavaScriptでCSSを操作して変更する方法がよくわかりました!

田島悠介

ゆかりちゃん、今後も分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。