CSS画像置換について

2007/12/20 木曜日

カテゴリー: (X)HTML, CSS — hiroki ooiwa @ 15:58:36

こんちゃす。海外のCSSデザインを見ていたら、text-indent: -9999px; とは違う画像置換方法を見つけました。(既出かも)

旧式では、CSS側で、text-indent: -9999px; などと指定して、テキストを飛ばして、バックグラウンドに画像を指定する下記のようなテクニックを使います。

text-indent: -9999px を使ったテクニック

(X)HTML側

<div><a href="#"><span>テキスト</span></a></div>

CSS側

div a {
	display: block;
	width: 45px;
	height: 45px;
	background: url(images/bg_off.gif) no-repeat 0 0;
	text-indent: -9999px; /*ここでテキストを飛ばす*/
}
div a:hover {
	background: url(images/bg_on.gif) no-repeat 0 0;
}

しかし、これでは、キーボードでのタブ移動の際に選択がわかりにくくなって、アクセシビリティ的によくないとのことから、display: none; を使った画像置換テクニックもあります。

display: none; を使った画像置換テクニック

(X)HTML側

<div><a href="#"><span>テキスト</span></a></div>

CSS側

div a {
	display: block;
	width: 45px;
	height: 45px;
	background: url(images/bg_off.gif) no-repeat 0 0;
}
div a:hover {
	background: url(images/bg_on.gif) no-repeat 0 0;
}
div span {
	display: none; /*テキストを表示させない。*/
}

コメントはまだありません »

コメントはまだありません。

このコメント欄の RSS フィード トラックバック URL

コメントをどうぞ

Powered by WP Hashcash