
【6日でできるJavaScript入門】スタイルの変更
Webページをより魅力的に・インタラクティブにするためには、JavaScriptで要素のCSS(スタイル)を動的に変更することが不可欠です。
たとえば、ボタンを押して文字サイズを変えたり、画像にマウスを乗せて色を変えたりすることで、ユーザー体験を向上させることができます。
JavaScriptでは、styleプロパティを通じて様々なCSSの値を変更できます。
ここでは、「スタイル変更の基礎」「プロパティ名の書き方」「具体例」「イベントと連携」まで、表やサンプルとともに解説します。
概要 | 内容例 |
---|---|
styleプロパティ | 要素のCSSを書き換える |
キャメルケース表記 | font-size → fontSizeなど |
イベント連携 | ボタン・マウス操作でスタイル変更 |
thisの利用 | 複数要素の一括的な書式制御 |

1.JavaScriptによるスタイル変更の基本
JavaScriptでは、HTML要素のstyleプロパティを使って、個別にCSSの値を変更できます。
目的 | 書き方の例 |
---|---|
文字色を変える | 要素.style.color = '#FF0000'; |
文字サイズ変更 | 要素.style.fontSize = '18px'; |
背景色変更 | 要素.style.backgroundColor = '#CCFFCC'; |
1.1. キャメルケースによるCSSプロパティ名
JavaScriptでCSSプロパティ名を指定するときは、キャメルケース(小文字+大文字)で書きます。
CSSプロパティ | JavaScriptでの書き方 |
---|---|
font-size | fontSize |
background-color | backgroundColor |
border-radius | borderRadius |
text-align | textAlign |
2.サンプル:文字サイズと背景色の切り替え
2.1. 例:「文字の大きさ」と「背景色」を変更する
ファイル名: lesson20-1.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>🎨 スタイルの変更デモ</title>
<style>
#content {
margin: 20px auto;
padding: 15px;
width: 450px;
background-color: #f8f8ff;
font-size: 16px;
border-radius: 8px;
transition: all 0.4s;
}
</style>
</head>
<body>
<h1>🎨 スタイルの変更デモ</h1>
<button onclick="changeSmall()">小さく</button>
<button onclick="changeMedium()">標準</button>
<button onclick="changeLarge()">大きく</button>
<button onclick="changeBg()">背景色変更</button>
<div id="content">
<p>この文章のスタイルを変更してみましょう。ボタンを押すと文字サイズや背景色が変わります。</p>
</div>
<script>
const content = document.getElementById('content');
function changeSmall() {
content.style.fontSize = '13px';
content.style.color = '#2d5a7e';
}
function changeMedium() {
content.style.fontSize = '16px';
content.style.color = '#222222';
}
function changeLarge() {
content.style.fontSize = '22px';
content.style.color = '#b84a00';
}
function changeBg() {
// 背景色をランダムに変更
const colors = ['#f8f8ff', '#ffe4b5', '#e0f7fa', '#fff0f5'];
content.style.backgroundColor = colors[Math.floor(Math.random() * colors.length)];
}
</script>
</body>
</html>
ブラウザの出力例

出力例(例:ボタンを押したとき)
- 「大きく」→ 文字が大きく・色がオレンジ系に
- 「背景色変更」→ 背景色がランダムに変化
タグと構文解説
タグ・構文 | 解説 |
---|---|
<div id="content">...</div> | 操作対象となる要素。JavaScriptで取得しやすい |
.style.プロパティ | style属性を通してCSS値を設定 |
transition: all 0.4s; | CSSでアニメ風のなめらかな変化を実現 |
onclick="関数名()" | ボタンクリック時に関数実行 |
3.複数要素のスタイル変化:画像ギャラリーに応用
3.1. 例:「画像にマウスを乗せたとき」だけ鮮明に
素材のダウンロード
以下のリンクから使用する素材をダウンロードできます。
pic01.png | pic02.png | pic03.png |
---|---|---|
![]() | ![]() | ![]() |
ファイル名: lesson20-2.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>🖼️ 画像ギャラリー・スタイル操作</title>
<style>
#gallery {
display: flex;
gap: 8px;
background-color: #222;
padding: 10px;
}
#gallery img {
opacity: 0.5;
border: solid 2px #ccc;
border-radius: 8px;
width: 240px;
transition: all 0.3s;
}
</style>
</head>
<body>
<h1>🖼️ 画像ギャラリー・スタイル操作</h1>
<div id="gallery">
<img src="pic01.png" alt="写真1" onmouseover="hoverImg(this)" onmouseout="leaveImg(this)">
<img src="pic02.png" alt="写真2" onmouseover="hoverImg(this)" onmouseout="leaveImg(this)">
<img src="pic03.png" alt="写真3" onmouseover="hoverImg(this)" onmouseout="leaveImg(this)">
</div>
<p>画像にマウスを乗せると明るく・枠色が変わります。</p>
<script>
function hoverImg(obj) {
obj.style.opacity = 1.0;
obj.style.border = 'solid 2px #ffb300';
}
function leaveImg(obj) {
obj.style.opacity = 0.5;
obj.style.border = 'solid 2px #ccc';
}
</script>
</body>
</html>
ブラウザの出力例

出力例
- 画像にマウスを乗せると、くっきり&オレンジ枠になる
- マウスを外すと、半透明&グレー枠に戻る
構文のポイント
構文 | 解説 |
---|---|
onmouseover="..." | マウスが画像上に来たときのイベント |
this | イベント発生元(ここではimg要素自身) |
.style.プロパティ | その要素だけのCSSを書き換える |
4.CSSの値を取得する場合
- JavaScriptで取得できるのは「要素のstyle属性で直接指定されている値」のみです。
<style>
や外部CSSの値を取得したい場合は、getComputedStyle()
を使う必要があります(ここでは基礎のみに留めます)。
まとめ
- JavaScriptでのスタイル変更は、
要素.style.プロパティ
で実現します。 - CSSのプロパティ名はキャメルケース(例:fontSize, backgroundColor)で指定。
- ボタンやマウスイベントと組み合わせて、文字サイズ・色・背景・画像の効果を自在に変化できる。
- thisや引数を活用すると、複数要素もシンプルに制御できる。
スタイルの動的な変更はWeb体験を大きく広げる力です。小さな効果から試し、少しずつ応用範囲を広げていきましょう!