[使えるCSSテクニックVol.2] 第 9 回 CSS だけで実現する画像ボタンのロールオーバー

No Photo

第 9 回目は「 CSS だけで実現する画像ボタンのロールオーバー」です。

javascriptを使用せずに、ロールオーバー効果をCSSのみでやってみましょう。

以下のボタン画像にマウスをのせてみてください。

サンプル1. 位置をずらす

ボタン

XHTML

<p class="sample1"><a href="#">
<img src="hogehoge" alt="ボタン" width="200" height="50" /></a></p>

CSS

.sample1 a:hover {
	position: relative;
	top: 1px;
	left: 1px;
}

positionプロパティを使って位置をずらします。

 

サンプル2. 透過させる

ボタン

XHTML

<p class="sample2"><a href="#">
<img src="hogehoge" alt="ボタン" width="200" height="50" /></a></p>

CSS

.sample2 a:hover {
	opacity: 0.7; /* Opera・Safari */
	-moz-opacity:0.7; /* Firefox */
	filter: alpha(opacity=70); /* IE */
	zoom: 1; /* IE */
}

各ブラウザにてプロパティが違うので、対応するプロパティで透過させます。なおIEの場合は、インライン要素に透過処理をさせる場合、HasLayoutプロパティもtrueに設定する必要があるのでzoomを使っています。

 

サンプル1. 背景色をかえる

ボタン

XHTML

<p class="sample3"><a href="#">
<img src="hogehoge" alt="ボタン" width="200" height="50" /></a></p>

CSS

.sample3 a:hover img {
	background-color: #FF6600;
}

背景色を設定してやります。なお色が変わる部分については、ボタン画像の方で透過処理して書き出すのがポイントです。

 

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ