本記事では、ホバーした時に影ができるボタンをCSSのみで作成する方法について解説しています。
ITエンジニア特化の転職サイト!
自社内開発求人に強い【クラウドリンク】
HTML/CSSの学習におすすめ参考書
1冊ですべて身につくHTML&CSSとWebデザイン入門講座
完成形のボタン
本記事で作成するボタンの完成形の挙動を最初に確認しておきましょう。
下記のように、マウスカーソルがボタンに乗った時(ホバー)に右下にうっすら影が表示されているのが分かります。

ボタンの作成
以降の見出しでは、下記のサンプルコードを用いて解説しています。自分のパソコンで実行結果を確認したい人や別の数値で検証してみたい人はコピペして使ってください。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>Document</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div id="container">
<button class="btn">ボタン</button>
</div>
</body>
</html>
/* 装飾 */
#container {
text-align: center;
}
.btn {
margin-top: 50px;
padding: 20px 80px;
font-weight: bold;
border: 2px solid #000;
background: #fff;
transition: all 0.5s;
}
ホバーした時にスタイルを適用させる
続いてホバーした時にだけスタイルを適用させるCSSを記述しましょう。
ホバーした時にだけスタイルを適用させるにはCSSの擬似クラス「:hover」を使います。
.btn:hover {
/* ホバー時の適用させるスタイルを記述 */
}
影を作る
最後に疑似ラクスの:hoverのブロック内に影を作成するスタイルを記述しましょう。
影を作るにはbox-shadowプロパティを使います。box-shadowプロパティは「左右の位置」「上下の位置」「ぼかし」「広がり」「カラー」「内側指定」の6つの値を設定することができます。
今回作成する影は右下にうっすらと表示される影なので、左右の位置・上下の位置・ぼかし・カラーの4つを指定します。
.btn:hover {
box-shadow: 5px 5px 10px #000; /* 右に5px・下に5px・ぼかし10pxの黒い影を表示 */
}

【CSS】影を付けるbox-shadowの使い方本記事ではCSSを使って影を付けることができるbox-shadowの使い方について解説しています。...
まとめ
今回はCSSを使ってホバー時に影を表示させるボタンを作成しました。今回のポイントについておさらいしましょう。
おさらいポイント!
- ホバー時のみスタイルをあてる場合は、CSSの擬似クラス「:hover」を使う
- 影を作るにはbox-shadowプロパティを使う