子供、いらない

はりょ。少子化問題とは関係ありません。
カウンタが345678やその付近の方はベースノートに書き込んでね。

マウスオン画像切換を試してみる

2006-09-20 23:55:27 | junk.test.body

あれとかこれとかの人が面白そうなことをしているので、早速真似してみました(わは)。

以下は、マウスオン(や選択)で画像が切換るようにするテスト。

-Aタグにclass="onMouse"なし

<a href="リンク先"><img class="onMouseOverVis" src="マウスオン画像"><img class="onMouseOutVis" style="margin-left: -マウスオン画像の幅" src="マウスオフ画像"></a>
スタイラスペンシルのノック部分コメダのシロノワールFirefoxではA:hoverにサイズ指定なんかしなくても、問題なく画像が切り替わるが…。

-Aタグにclass="onMouse"あり

<a class="onMouse" href="リンク先"><img class="onMouseOverVis" src="マウスオン画像"><img class="onMouseOutVis" style="margin-left: -マウスオン画像の幅" src="マウスオフ画像"></a>
スタイラスペンシルのノック部分コメダのシロノワールでもIEではA:hoverにサイズ指定(例えば_width:auto;)をしないと、画像が切り替わらない

どちらにしても、マウスオフ画像のimgタグにstyle="margin-left: -マウスオン画像の幅"の属性(例えばstyle="margin-left: -120px")を付加して、マウスオン画像の上にマウスオフ画像がくるように「ずらす」必要がある。
# 結構面倒ジャン

-z-index, visibility→display

<a class="onMouse" href="リンク先"><img class="onMouseOver" src="マウスオン画像"><img class="onMouseOut" src="マウスオフ画像"></a>
スタイラスペンシルのノック部分コメダのシロノワールz-indexとvisibility:{visible|hidden}のプロパティを使ったclass="onMouseOverVis"とclass="onMouseOutVis"の代わりに、display:{inline|none}のプロパティを使ったclass="onMouseOver"とclass="onMouseOut"を使用してみる。

これなら、マウスオン画像の上にマウスオフ画像がくるように「ずらす」必要はない。

-CSSの追記内容

/* マウスオン画像切換 */
A:hover.onMouse,
A:active.onMouse {
	_width: auto;	/* IEのバグ対策 */
	/* IEはA:hoverやA:activeにサイズ指定しないと画像が切換らない */
}

IMG.onMouseOver,
IMG.onMouseOut {
	/* 画像の枠線なし */
	border: 0;
}
A:link    IMG.onMouseOver,
A:visited IMG.onMouseOver {
	display: none;
}
A:hover   IMG.onMouseOver,
A:active  IMG.onMouseOver {
	display: inline;
}
A:link    IMG.onMouseOut,
A:visited IMG.onMouseOut {
	display: inline;
}
A:hover   IMG.onMouseOut,
A:active  IMG.onMouseOut {
	display: none;
}


/* 以下は廃案? */
IMG.onMouseOverVis,
IMG.onMouseOutVis {
	border: 0;
}
A:link    IMG.onMouseOverVis,
A:visited IMG.onMouseOverVis {
	z-index: 2;
	visibility: hidden;
}
A:hover   IMG.onMouseOverVis,
A:active  IMG.onMouseOverVis {
	z-index: 4;
	visibility: visible;
}
A:link    IMG.onMouseOutVis,
A:visited IMG.onMouseOutVis {
	z-index: 3;
	visibility: visible;
}
A:hover   IMG.onMouseOutVis,
A:active  IMG.onMouseOutVis {
	z-index: 1;
	visibility: hidden;
}

ということで、これが精一杯かなぁ。後で、CSSの編集内容と記事の書き方をきちんとした記事にしないと(わは)。


↑Bまうすおんてすと(追記あり) - あれとかこれとか (Lefty) 2006年09月19日06:55
[351] 「マウスオン」が作成が昨日よりできません。 - goo ブログサークル 2006年09月15日17:20



最新の画像もっと見る

6 コメント

コメント日が  古い順  |   新しい順
なるほど… (Lefty)
2006-09-21 07:22:35
さすが。私が適当に書いたのよりよっぽどスマートだ。

で、とりあえず私は解説記事書かずにすむと…らっきー(をい
Opera Mobileでは… (かつを)
2006-09-21 08:20:00
でも実は、Opera Mobileでは「z-index, visibility→display」の方法だけ画像が切換りません。



Safariでどうなるかは、全く分かりませんし、困ったものです。
調査結果 (Lefty)
2006-09-23 07:13:19
> Safariでどうなるかは

某所にて協力願ったところ、

Safariの1.2、1.3にて、

3つともきれいに切り替わるのを確認できたそうです。
ありがとうございます (かつを)
2006-09-23 13:39:24
さっきOpera Mobile™ 8.60 for W-ZERO3(無線LAN経由)で閲覧してたら、3個とも大丈夫でした。

先日PHS回線経由で閲覧したときには、画像(やCSS)のロードがうまくいってなかっただけだったということでしょうか。



更にSafariでもOKとのことなので、この方式でgoですね。
こんにちは (1964)
2008-09-13 07:14:09
以前カウンタの設置でお世話になった1964です。

今回もコチラを参考にさせていただいてマウスオンにチャレンジしてみました。
取りあえず何とかうまくいったみたいです。

ありがとうございました~。
どもです (かつを)
2008-09-21 00:01:45
きちんとマウスオーバー画像切換えができたみたいで、よかったです。

原案?は、Leftyさんなんですけどね(わは)。

コメントを投稿