CSSのhoverで別の要素の値を変更させる方法【初心者向け】

初心者向けにCSSのhoverで別の要素の値を変更させる方法について解説しています。hoverはマウスが接触している場合のCSSを書くプロパティですが、別の要素を変化させることも出来ます。hoverの書き方を覚えましょう。

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

CSSのhoverで別の要素の値を変更させる方法について解説します。hoverはマウスが要素に触れている場合の処理を書くプロパティですが、別の要素を変化させることも出来ます。

そもそもCSSについてよく分からないという方は、CSSの書き方について解説した記事を読むとさらに理解が深まります。

 

田島悠介

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

大石ゆかり

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

田島悠介

CSSのhoverで別の要素の値を変更させる方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

hoverで別の要素を変更させる方法

ボタンにマウスオーバーした時に、ボタンの色が変わる、や、背景画像が変わる、などといった装飾は良く見かけるのではないかと思います。

では、ある箇所にマウスオーバーした時に、全く別の場所にある要素が影響を受ける場合、どのように書けば良いのでしょうか。

 

実際に書いてみよう

まず、適当に、二つのブロックを用意し、違うクラス名、同じ装飾を与えてみました。

HTML

<div class="button">
  <p>マウスオーバーしてね</p>
</div>

<div class="result">
</div>

 

CSS

.button, .result{
  width: 200px;
  height: 100px;
  padding: 20px 0;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  background: #66b6d5;
  border-radius: 10px;
  margin-bottom: 10px;
}

次に、「.buttonにhoverした時の、result」を書いていきます。書き方としては、
.button:hover + .resultこんな風に、プラスでつなぎます。

今回は、.resultの背景色を変えてみましょう。

CSS

.button, .result{
  width: 200px;
  height: 100px;
  padding: 20px 0;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  background: #66b6d5;
  border-radius: 10px;
  margin-bottom: 10px;
}

.button:hover + .result{
  background: #E72458;
}

これで、別の要素をhoverで変更させることができました!

 

この記事を監修してくれた方

和田 祥子(わださちこ)
フリーランスのWebデザイナー7年目です。Ruby勉強中。

テニスと音楽とビールが好きです。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

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

大石ゆかり

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

TechAcademyでは、初心者でもオリジナルWebサイトを公開できるオンラインブートキャンプWebデザイン講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。