CSS

シンプル実装!CSSのみでaタグ画像をマウスオーバーで半透明にする手順

Webデザインやフロントエンド開発において、ユーザーエクスペリエンスを向上させるための小技やテクニックは数多く存在します。その中でも、JavaScriptを使わずにCSSだけでaタグ内の画像をマウスオーバー時に半透明にする方法は、シンプルでありながら効果的です。今回は、その実装方法を詳しくご紹介します。

なぜCSSだけで実装するのか

JavaScriptは強力なスクリプト言語であり、様々な動的な動作を実装するのに適しています。しかし、一部の動作やデザイン変更に関しては、CSSのみで実装することでページの読み込み速度を向上させることができ、SEOにも寄与します。

実装に使用した画像

今回のデモンストレーションに使用した画像は以下です。

マウスオーバー用の画像

 
この画像を用いて、マウスオーバー時の半透明なエフェクトを実装します。

マウスオーバー時のCSS記述

まず、aタグのhover時のスタイルを記述します。以下のように、opacity属性やfilter:alphaを使用して画像を50%透過させます。

<style type="text/css">
<!--
a:hover img{
	opacity:0.5;
	-moz-opacity:0.5;
	filter:alpha(opacity = 50);
}
-->
</style>

 
こちらのスタイルを適用すると、aタグ内の画像がマウスオーバー時に半透明になります。

HTMLの実装方法

次に、HTML側の記述方法です。aタグ内にimgタグを用意し、上記のCSSが適用されるようにします。

<a href="/"><img src="i01.jpg" alt="マウスオーバー用の画像" width="160" height="160"></a>

CSSだけでマウスオーバー時にaタグの画像を半透明に表示するデモページ

実際に動作を確認したい方は、以下のデモページで確認できます。

CSSだけでマウスオーバー時にaタグの画像を半透明に表示デモ

この方法を用いることで、ページ内のリンクボタンや画像にマウスオーバーされている感じを簡単に演出できます。
特に、大量の画像やリンクが存在するページでの読み込み速度の向上や、ユーザー体験の向上に寄与します。

 
※流用される場合は自己責任でお願いします。
 デモページタグ内のGoogleアナリティクスタグは流用しないで下さい。