• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CSSで、リストでGlobalNavigation(画像ボタン)を作り、CSSでのRollOverと上下の隙間を消す方法)

CSSでリストでGlobalNavigationを作る方法

このQ&Aのポイント
  • CSSを使用してリストでGlobalNavigation(画像ボタン)を作成する方法について教えてください。
  • また、CSSを使用してRollOver効果を付ける方法や、ボタンとボタンの間の隙間を消す方法も教えてください。
  • 質問者はWebサイト制作が2回目なので、初心者向けの解説がありがたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.2

こんにちは >img { vertical-align:bottom; } これは今回の質問に対する回答です 前回で記述したのはリスト画像とtable画像の下に隙間ができていたので消せないものかと思って追加しただけです(一応IE6.0,Firefox2.0,Opera9.2でほぼ同じ表示にしているつもりですが・・・) >画像オフにすると スタイルシート無効、画像読み込み無効、背景色指定無効などのことですか? スタイルシート無効であれば「リスト1」のところに<img>と記述すれば回避できます 画像読み込み無効であれば<img>も画像になるので表示させることはできません 背景色無効であれば(IE6.0ではできませんが) <style type="text/css"><!-- #a1 span img { display:none; } #a1:hover img { display:none; } #a1:hover span img { display:block; } ul { margin:0px; padding:0px; } --></style> <div id="nv-global"> <ul> <li><a href="***.html" id="a1"><img src="sample0.gif"><span><img src="sample1.gif"></span></a></li> </ul> </div> のようなやり方ができます

touchy
質問者

お礼

おっしゃるとおりでした。 img { vertical-align: bottom; } でバッチリ隙間が消えました。 御礼申し上げます。

その他の回答 (1)

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.1

こんにちは 1つ前の質問にも記述している img { vertical-align: bottom; } のことですか? ですがCSSのみでロールオーバーさせるのであれば<img>ではできません <style type="text/css"><!-- #nv-global #a1 { display:block; width:100px; height:20px; text-indent:-999999px; background-image:url(sample0.gif); background-repeat:no-repeat; } #nv-global #a1:hover { background-image:url(sample1.gif); } ul { margin:0px; padding:0px; } --></style> <div id="nv-global"> <ul> <li><a href="***.html" id="a1">リンク1</a></li> </ul> </div> って感じになります display:block; width:100px; height:20px; text-indent:-999999px; background-repeat:no-repeat; はひとつにまとめてもいいです #nv-global a { display:block; width:100px; height:20px; text-indent:-999999px; background-repeat:no-repeat; } #a1 { background-image:url(sample0.gif); } #a1:hover { background-image:url(sample1.gif); }

touchy
質問者

お礼

助かっております。本当に。 何としても今夜じゅうにこのベースHTMLをつくりあげないと 他の何十ページもあるコンテンツがつくりに入れず、時間がありません。 日曜じゅうに20~30ページある他のページをつくりあげなくてはなりません(各コンテンツは文字データがあるので流し込みでかなり早くできるとは思いますが、とにかく時間がありません) だから本当にありがたいです。

touchy
質問者

補足

前の質問でもお世話になっていたのですね。心強いです。 当方、Tableレイアウト時にサイトをつくりにつくっていて、 Tableの場合、デザインを凝りまくれ、クライアントもそこを買って もらっていましたが、二年強業務から離れている間にCSSが主流になって いました。 SEOの知識もとことん追求したので、今はCSSで制作しようと決めて取り組んでおりますが、CSSは極上デザインとSEOの両輪を兼ね備えたノウハウが見当たらず、四苦八苦しております。デザインレベルを下げればどうということもないのですが、1pxもずれがないほどにデザインを落とし込んでいるので固執しなければなりません。 余談が過ぎました。 > 1つ前の質問にも記述している > img { vertical-align: bottom; } > のことですか? いいえ、違うんです。前回は単なる要素の話で、今回はリストの話です。 リストタグ(<ul><li>)でGlobal Navigationをつくることが主流ですね。 理由等も他の方のご回答で既に得心しております。 しかしこのリスト、左側に縦に画像ボタンとして並べていくと、 4~5pxほどでしょうか、画像ボタンと画像ボタンの間に隙間ができるんです。 > ですがCSSのみでロールオーバーさせるのであれば<img>ではできません やはりそうなんですか。 aやhoverの背景画像設定でやるようにご案内ありますが、私もネットサーフして これを見つけたのでやろうかと思ってはいたのですが、 「この手法は画像をOFFにして閲覧された場合、何も見えなくなる。 この理由によって、今はほとんど採用されなくなっている」 ということを本で見たので、これもダメだと判断しておりましたが、 実はまんざらでもないのでしょうかね。