menu
menu

キーワード検索

 

前月(11月)の人気記事トップ10

  1. ( 1 - ) 【CSS】CSSだけでドロップダウンメニュー
  2. ( 2 - ) 【Mac】Macのユーザー名とアカウント名を変更する
  3. ( 3 - ) 【jQuery】jQueryでドロップダウンメニュー
  4. ( 4 - ) 【CSS】スマホ対応CSSだけでドロップダウンメニュー
  5. ( 6 ↑) 【iPhone・iPad】iPhoneのメモリを簡単に解放する方法
  6. ( 5 ↓) 【iPhone・iPad】投稿の準備中にエラーが起きました。後でやり直してください。
  7. ( 9 ↑) 【jQuery】入門2. jQueryをHTMLに組み込む
  8. ( 8 - ) 【CSS】レスポンシブデザインのブレークポイントは⁉
  9. (10 ↑) 【Mac】iMovieの保存場所を変更する
  10. ( - ↑) 【PHP】PHPでシンプルなメールフォーム
このエントリーをはてなブックマークに追加

【CSS3】マウスオーバーでボタンの画像が変わるロールオーバー

【CSS3】マウスオーバーでボタンの画像が変わるロールオーバー

こんにちは(・∀・)

前回は画像や背景画像を使わずに、マウスオーバーするとCSSだけで要素の色が変化するロールオーバーを、サンプルを使用してご紹介しました。

今回は画像や背景画像を使ってマウスオーバーするとCSSだけで画像が変化するロールオーバーを、サンプルを使用してご紹介します。

ボタンがテキストリンクのロールオーバーはこちらをご覧ください。
【CSS3】マウスオーバーでボタンの色が変わるロールオーバー

アニメーション系の動きのロールオーバーボタンはこちらをご覧ください。
【CSS3】CSSだけでアニメーションするリンクボタン

サンプル1

画像要素をマウスオーバーした時にopacityプロパティで要素を透過させて画像を変化させています。

HTML

<ul class="demo1">
<li><a href=""><img src="logo-sample.png" alt="Webデザインラボ"></a></li>
<li><a href=""><img src="logo-sample.png" alt="Webデザインラボ"></a></li>
<!--demo1--></ul>
CSS

.demo1 {
  display: flex;
  justify-content: center;
}
.demo1 li {
  background: url(logo-sample2.png) no-repeat;
  background-size: 200px 40px;
  width: 200px;
  height: 40px;
  margin-right: 1px;
}
.demo1 li a {
  display: block;
}
.demo1 li a img {
  width: 200px;
  height: 40px;
}
.demo1 li a:hover img {
  opacity: 0.5;
}
Result
  • Webデザインラボ
  • Webデザインラボ

使用する背景画像です。
サンプル画像

サンプル画像

このサンプルはマウスオーバーした時にopacity:0.5でロールオーバーさせています。画像を透過させることによって下に指定してある背景画像が表示されて画像が変化しているように見えます。なのでロールオーバーで見える画像の色が若干元の色と違って見えます。

opacityプロパティについて詳しくはこちらのページをご覧ください。
opacity【CSS3リファレンス】

サンプル2

画像要素をマウスオーバーした時にvisitilyプロパティで要素を見えなくして画像を変化させています。

HTML

<ul class="demo2">
<li><a href=""><img src="logo-sample.png" alt="Webデザインラボ"></a></li>
<li><a href=""><img src="logo-sample.png" alt="Webデザインラボ"></a></li>
<!--demo1--></ul>
CSS

.demo2 {
  display: flex;
  justify-content: center;
}
.demo2 li {
  background: url(logo-sample2.png) no-repeat;
  background-size: 200px 40px;
  width: 200px;
  height: 40px;
  margin-right: 1px;
}
.demo2 li a {
  display: block;
}
.demo2 li a img {
  width: 200px;
  height: 40px;
}
.demo2 li a:hover img {
  opacity: 0.5;
}
Result
  • Webデザインラボ
  • Webデザインラボ

使用する背景画像です。
サンプル画像

サンプル画像

このサンプルはマウスオーバーした時にvisibility:hiddenでロールオーバーさせています。画像を見えなくすることによって下に指定してある背景画像が表示されて画像が変化しているように見えます。

opacityプロパティについて詳しくはこちらのページをご覧ください。
opacity【CSS3リファレンス】

サンプル3

マウスオーバーした時にその要素に指定してある背景画像を切り替えて変化させています。

HTML

<ul class="demo3">
<li>btn</li>
<li>btn</li>
</ul>
CSS

.demo3 {
  display: flex;
  justify-content: center;
}
.demo3 li {
  display: block;
  background: url(logo-sample3.png);
  background-size: 200px;
  width: 200px;
  height: 40px;
  margin-right: 1px;
  overflow: hidden;
  text-align: center;
  line-height: 2.6;
}
.demo3 li a {
  display: block;
  color: #fff;
}
.demo3 li a:hover {
  background: url(logo-sample4.png);
  background-size: 200px;
  background-position: bottom;
}
Result

使用する背景画像です。
サンプル画像

サンプル画像

このサンプルはマウスオーバーした時に設定してある背景画像が切り替わることでロールオーバーさせています。

サンプル4

CSSスプライトで指定してある背景画像をマウスオーバーした時に表示する画像の位置を移動させて背景画像を変化させています。

HTML

<ul class="demo4">
<li>btn</li>
<li>btn</li>
</ul>
CSS

.demo4 {
  display: flex;
  justify-content: center;
}
.demo4 li {
  display: block;
  background: url(logo-sample5.png);
  background-size: 200px;
  width: 200px;
  height: 40px;
  margin-right: 1px;
  overflow: hidden;
  text-align: center;
  line-height: 2.6;
}
.demo4 li a {
  display: block;
  color: #fff;
}
.demo4 li a:hover {
  background: url(logo-sample5.png);
  background-size: 200px;
  background-position: bottom;
}
Result

使用する背景画像です。
サンプル画像

このサンプルは背景画像をCSSスプライトで表示しています。マウスオーバーした時に設定してある背景画像の位置が変わることでロールオーバーさせています。画像の位置を変えることによって下に設定してある背景画像が表示されて画像が変化しているように見えます。


関連リンク

opacity【CSS3リファレンス】
CSS3リファレンス

  • CSS3 マウスオーバー ロールオーバー
このエントリーをはてなブックマークに追加