![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_05.png?e8efa67)
CSSのみでロールオーバーの指定をしたいとき、皆さんはどのような方法を使われていますか?
・a:hoverで画像を入れ替える
(ボタン画像を背景に指定し、文字をインデントで飛ばしている時)
・a:hoverでボタン部分の背景をnoneにして、さらに後ろにある背景を表示させる
・通常時とhover時用の画像を一枚の画像にまとめて背景に指定し、a:hover時に背景画像を移動させる
などなど。
いろいろとやり方はあるかと思いますが、皆さんがどのようにされているか教えていただけるとうれしいです。
よろしくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
基本はjavascriptでやるべきだと思っていますが、どうしてもCSSという条件でなら今ならlist-item-imageじゃないですかね。
text-indentを使わない分弱点が少ないです。
ただしIE6とモダンブラウザのみで、IE5.5以下は切り捨てになります。
<a href="#">
<span>あああ</span>
</a>
a{
width:120px;
height:50px;
overflow:hidden;
}
a span {
display:list-item;
list-style:none url(link.gif) inside;
}
a:hover span{
list-style-image:url(hover.gif);
}
haslayoutがらみでもう少しなにかやらないといけなかった気がしますが・・・
ずっと前に作ったやつなのでよく覚えてないですが↓みたいな方法もあります。
<p class="RollOver"><a href="#"><img src="link.gif"></a></p>
/* RollOver -- IE4~ MacIE5.1~ NN6.2~ FF1~ OP7~ SF1~ */
.rollOver {
display:table;}
.rollOver a {
display:table-cell !important;
display:inline-block;
text-decoration:none;
background:url(hover.gif) transparent 0 0;}
.rollOver a img {
position:relative;}
.rollOver a:hover {
background-position: 0% 0%;}
.rollOver a:hover img {
z-index:-1;}
/* RollOver End */
基本はjavascriptでやるべき
なのですね。
CSSでやったほうがいい、と勘違い?していました。
大変参考になりました。
ありがとうございました。
No.2
- 回答日時:
どこからどこまでがアンカーとして有効なのかわかるように、hover指定はしてほしいですね。
colorでもbackgroundでも、borderでもtext-decorationでもいいですし。
linkさえ指定なしにしてもらえると、ブラウザの設定の色が反映されるのでいいのですが。
クリックの代わりとしてmouseover/hoverを使うのは、わたしも好ましいとは思いません。
> いろいろとやり方はあるかと思いますが、皆さんがどのようにされているか教えていただけるとうれしいです。
ネットワークリソース、ファイルサイズの節約の意味も込めて、
JavaScript/CSSいずれも、画像をひとまとめにする方法にするようにしています。
(画像の作り方や作成手間の関係で変わります。)
> (ボタン画像を背景に指定し、文字をインデントで飛ばしている時)
この方法はCSSオン、画像オフの場合に文字が表示されなくなりますから、好ましくないと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 zoomで自分の顔の背景 3 2023/06/07 22:34
- HTML・CSS 疑似要素で背景画像に指定したSVG画像の色変更 2 2023/01/30 22:45
- その他(ソフトウェア) ペイントで切り抜いた画像の背景を透明に 2 2022/09/15 10:20
- HTML・CSS svgクリップパスの応用コーディング方法 2 2022/04/09 09:07
- HTML・CSS 差し込み画像にをcssで大きさ指定したい 1 2022/11/23 23:14
- HTML・CSS CSSでサイトの背景に画像を組み込みたいのですが反映されません 2 2022/11/22 16:21
- Photoshop(フォトショップ) フォトショップで切り抜いた画像を透明にするには 3 2022/09/15 11:50
- Illustrator(イラストレーター) イラストレーターで文字の背景に自動で入れた長方形の左側の角だけ丸く(右側だけ直角に)する方法 4 2023/04/21 11:08
- 恋愛占い・恋愛運 カテ違いだったらすいません。心理について聞きたいです! 2 2022/04/18 14:26
- 美術・アート デザインについての考察。 なぜ人の脳は、規則正しく連続した要素を「背景」と認識するのか、実験してみま 2 2022/04/11 21:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CSSで複数の背景画像を実装する...
-
<hr>の縦バージョンはありますか?
-
画像をリンクボタンにして文字...
-
画像ははみ出すけど文字ははみ...
-
webデザインcss <p>タグ内の長...
-
Javascriptを使わないロールオ...
-
FIREWORKSとPhotoshopで画像の...
-
CSSについての質問です。
-
背景画像をブラウザサイズに合...
-
ヤフオクの商品説明欄に背景画...
-
WEBサイトのメニューバーを画像...
-
1枚の画像に複数のリンクと画像...
-
【CSS】ライブドアブログのスマ...
-
指定範囲内で画面に雪を降らす。
-
インラインフレームの高さ調節...
-
PDFの保存ボタンが表示されません
-
フォトショップデータからキレ...
-
画像貼り付け、URLに飛べる軽い...
-
背景が透明なリンクボタンで、...
-
画像の背景消しのeps保存について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<hr>の縦バージョンはありますか?
-
画像の上にテキスト配置で、拡...
-
画像とその下にあるテキストの...
-
background-repeat CSS で切れ...
-
IMGタグで画像の繰り返し使用は…
-
lightbox2で画像を天地左右中央...
-
iframe内をクリックさせない方...
-
background-sizeの背景で最小値...
-
【Webサイト】画像が小さく表示...
-
htmlかcssで背景の白い枠をなく...
-
background-sizeでcontainする...
-
【至急お助け!】チェックボッ...
-
同じ画像 複数回使用
-
ページごとに背景画像を変更し...
-
WEB上でディレクトリ内の画像を...
-
LightBoxの矢印の出し方
-
フッターの背景に色を指定した...
-
要素の幅をいろんな写真の幅に...
-
HP作成 作成した画像を動画の上...
-
HTMLで使う「見出し」は英文で...
おすすめ情報