IE6で隙間ができてしまう

このQ&Aのポイント
  • IE6でヘッダーとコンテンツの間に隙間ができてしまいます。IE7、Firefox、Safariでは問題なく表示されています。
  • IE6で表示されるヘッダーとコンテンツの間の隙間の解消方法について教えてください。
  • IE6のバグにより、ヘッダーとコンテンツの間に隙間ができる問題に困っています。隙間を無くす方法を教えてください。
回答を見る
  • ベストアンサー

IE6で隙間ができてしまう

IE6でヘッダーとコンテンツの間に隙間ができてしまいます。 IE7、Firefox、Safariでは問題なく表示されています。 [HTML] <div id="top"> <div id="topcont"> <h1><a href="http://www.AAA.com/"><img src="img/AAA.gif" />AAA</a></h1> </div></div> <div id="navi"> <div id="navicont"> <ul> <li id="home"><a href="http://www.AAA.com/" title="AAA">AAA</a></li> <li id="BBB"><a href="http://www.AAA.com/BBB.html" title="BBB">AAAについて</a></li> <li id="CCC"><a href="http://www.AAA.com/CCC.html" title="CCC Lesson">CCC</a></li> </ul> </div> </div> [CSS] #top { background: url(img/IIIII.jpg) repeat-x; margin: 0px; padding: 0px; height: 80px; } #topcont { background: url(img/III.jpg) repeat-x; margin: 0px auto; padding: 0px; height: 80px; width: 900px; } #navi { background: url(img/NNN.gif) repeat-x; text-align: center; margin: 0px; padding: 0px; height: 35px; } #navicont { margin: 0px auto; padding: 0px; height: 35px; width: 900px; } 隙間を無くすにはどうすればよいのでしょうか。 わかる方いらっしゃいましたら、よろしくお願い致します。

  • dex2
  • お礼率75% (12/16)
  • HTML
  • 回答数5
  • ありがとう数6

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

  • ベストアンサー
  • abril
  • ベストアンサー率69% (388/560)
回答No.5

> メニュー自体の表示については問題ないのですが、5つのうちの2つのページだけが、<div id="top">~</div>と<div id="navi">~</div>の間にIE6以下で隙間ができるという状態になっています。 2つ、というのはファイル毎で違う、という意味でしたか…ではこれについては忘れます。 > XMLバージョンが抜けてましたね。。 ということはDOCTYPEの前に<?xml version="1.0" encoding="文字コード"?>が挿入されているわけですね。これを挿入した上で、提供して頂いた情報を元にダミー画像を作成し、追加で頂いたbodyとh1 aのスタイルを追加してみましたが、その結果は質問者様とは異なり、以下の様になってしまいました。検証環境はWindows XP上、ブラウザのフォントなどは全てディフォルトのままです。 ・IE7.0:<div id="top">~</div>と<div id="navi">~</div>の間は隙間なくくっつく。 ・IE6.0:<div id="top">~</div>と<div id="navi">~</div>の間は空く…(A)。 ・Firefox2.0~:<div id="top">~</div>と<div id="navi">~</div>の間は空くがIE6.0よりは小さい…(B1)。しかし、<div id="top">の上に余白ができる…(B2)。 (B1)に関しては、 ---------------------------------------------------------------------- #navicont ul { margin: 0; } ---------------------------------------------------------------------- を追加、 (B2)に関しては ---------------------------------------------------------------------- #topcont h1 { margin: 0; } ---------------------------------------------------------------------- を追加することで解消されました。「<div id="navicont">の<UL>,<LI>でCSSの背景画像の移動を利用して、マウスオーバーで下部の背景画像に変わるようにしております。」とレスされているところを見ると、提供されていない#navicont ulという定義が既にあって、そこで上記と同じ結果になる様にスタイルを設定されているのでしょうね。#navicont ulはliをフロートさせて横並び、テキストは表示領域から追いやり背景画像をaで表示、というパターンですね?おそらく…。 ここでようやくIE6だけが隙間ができる(A)、という条件を同じくする事ができました。そこで再度検証した結果、CSSの下記の部分の定義に原因がある様です。 ---------------------------------------------------------------------- h1 a { display:block; (省略) text-indent:-9999px; } ---------------------------------------------------------------------- とありますが、そもそもここの定義の意図がちょっと謎です。<a>自体を"text-indent:-9999px;"で追いやってしまっているので、ここに"display:block;"を定義する意味がわかりません。<a>の中の要素である<img src="img/aaa.gif" alt="AAA画像" width="262" height="80" />と23.5文字のテキストが表示されないので高さを確保したかったのかもしれませんが、親要素である#top及び#topcontで(二重に)"height: 80px;"を定義済みですので、その必要はありませんし。また、実質非表示なのにfont周りをやたらと詳細に設定してあるのも意味不明です。そういう意味では、ここで必要な定義は<h1>~</h1>までを(事実上)非表示にするだけという事になります。であれば、 ---------------------------------------------------------------------- h1 a { display:none; } ---------------------------------------------------------------------- だけでも済みます。実際、こうするとお悩みの「IE6.0で<div id="top">~</div>と<div id="navi">~</div>の間に隙間があく」という症状は綺麗さっぱり改善されます。オリジナルの設定が何かの意図でどうしても必要であるというのであれば、他のプロパティはそのままにしておいてもまあかまいませんが、"display:block;"だけは"display:none;"に置き換えて下さい。それでもトラブルは解決しますので。 提供された情報で判断できるのはここまでです。

dex2
質問者

お礼

ご回答ありがとうございました。 ---------------------------------------------------------------------- #navicont ul { margin: 0; } ---------------------------------------------------------------------- と ---------------------------------------------------------------------- #topcont h1 { margin: 0; } ---------------------------------------------------------------------- を追加し、 ---------------------------------------------------------------------- h1 a { display:none; } ---------------------------------------------------------------------- に変更したところ、隙間がなくなりました! IE6でのスペースの問題は、まるで存在しなかったかのようにスッキリ解消されました。 ありがとうございました。

その他の回答 (4)

  • abril
  • ベストアンサー率69% (388/560)
回答No.4

> DOCTYPEは、(以下略) XML宣言なしのパターンですか? それから、ANo.2の補足要求に対するレスもお願いします。 それから、 > <div id="navicont">のリストでメニューを作っていて実際は<UL>~</UL>に<li>が5つあり、そのうちの2つだけに隙間が空いてしまうという状態になっています。 これはちょっと最初の質問の内容からスライドしてしまっている様に思えますが?質問者様の抱えているトラブルは”<div id="top">~</div>と<div id="navi">~</div>の間にIE6以下で隙間ができる”ということであって、<div id="navicont">内の問題ではなかった筈では?上記はまた別の問題ですか? だとしても、「<UL>~</UL>に<li>が5つあり、そのうちの2つだけに隙間が空いてしまうという状態」という意味がよくわかりませんが…そもそも、頂いたソースの情報だけで再構成すると、<div id="navicont">内の<ul>はセンタリング状態でテキストがただ並ぶだけで、各<li>どうしの間隔などは何も指定されていないスタイルです。なので、この隙間、というのが実際にはどの部分とどの部分の事を指すのか、イメージできません。 引き続き上記質問に(できるだけ具体的に)補足して下さい。

dex2
質問者

お礼

ANo.2のレスと前後してしまいました。 XMLバージョンが抜けてましたね。。 > <div id="navicont">のリストでメニューを作っていて実際は<UL>~</UL>に<li>が5つあり、そのうちの2つだけに隙間が空いてしまうという状態になっています。 これはちょっと最初の質問の内容からスライドしてしまっている様に思えますが?質問者様の抱えているトラブルは”<div id="top">~</div>と<div id="navi">~</div>の間にIE6以下で隙間ができる”ということであって、<div id="navicont">内の問題ではなかった筈では?上記はまた別の問題ですか? <div id="navicont">内で<UL>~</UL>に<li>で5つのメニューを横並びで作っています。全ページにメニューは表示されており、メニュー自体の表示については問題ないのですが、5つのうちの2つのページだけが、<div id="top">~</div>と<div id="navi">~</div>の間にIE6以下で隙間ができるという状態になっています。 わかりづらくてすみません、よろしくお願い致します。

  • abril
  • ベストアンサー率69% (388/560)
回答No.3

書き忘れました。念の為、DOCTYPEも明らかにして下さい。

dex2
質問者

お礼

ご連絡ありがとうございます。 DOCTYPEは、 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja" dir="ltr"> になります。 <div id="navicont">のリストでメニューを作っていて実際は<UL>~</UL>に<li>が5つあり、そのうちの2つだけに隙間が空いてしまうという状態になっています。 どうぞよろしくお願い致します。

  • abril
  • ベストアンサー率69% (388/560)
回答No.2

> <div id="top">~</div>と<div id="navi">~</div>との間の事になります。 > IE6、IE5.5だけで隙間ができてしまい、IE7、FirefoxやSafariでは隙間なく表示されています。 #top/#topcont/#naviでbackground-imageで使用されている画像の大きさがわからないので、こちらの環境では替わりにbackground-colorで描画領域を塗り潰して確認してみたのですが、その限りではIE6/IE7/Firefox(IE5.5は考慮に入れていません)では描画領域自体には差がありません。background-repeatの方向がx軸(横方向)だけの様ですが、それは問題ありませんか? それから、下記の部分についても、"img/AAA.gif"のサイズや(横並びになっている)”AAA”のテキストのボリュームが分からない為、検証条件を揃える事が出来ません。 <h1><a href="http://www.AAA.com/"><img src="img/AAA.gif" />AAA</a></h1> なので、検証条件をできるだけ質問者様と同一にする為に、以下の情報について補足して下さい。 ■下記の各画像のサイズ(WとH)。 img/AAA.gif img/IIIII.jpg img/III.jpg img/NNN.gif ■下記のテキストの文字数(できればバイト数で)。 AAA ■CSSでは親要素(body等)でfont-sizeやline-heightを定義しているか?定義しているのであればその部分。

dex2
質問者

お礼

ご連絡ありがとうございます。 書き忘れていましたが、<div id="navicont">の<UL>,<LI>でCSSの背景画像の移動を利用して、マウスオーバーで下部の背景画像に変わるようにしております。このことも関係あるのでしょうか… >■下記の各画像のサイズ(WとH)。 img/AAA.gif 262px X 80px img/IIIII.jpg 3px X 80px img/III.jpg 3px X 80px img/NNN.gif 1px X 35px ■下記のテキストの文字数(できればバイト数で)。 AAA 全角23.5文字 text-indent:-9999px;で表示しないようにしてます。 h1 a {top.css (98 行目) display:block; font-family:"ms pgothic",Arial,Helvetica,sans-serif; font-size:1em; font-size-adjust:none; font-stretch:normal; font-style:normal; font-variant:normal; font-weight:normal; height:80px; line-height:normal; margin:0px; padding:0px; text-indent:-9999px; width:900px; } ■CSSでは親要素(body等)でfont-sizeやline-heightを定義しているか?定義しているのであればその部分。 body { color:#333333; font-family:hirakakupro-w3,osaka,"ms pgothic",Arial,Helvetica,sans-serif; font-size:13px; font-size-adjust:none; font-stretch:normal; font-style:normal; font-variant:normal; font-weight:normal; line-height:18px; margin:0px; padding:0px; text-align:center; } よろしくお願い致します。

  • abril
  • ベストアンサー率69% (388/560)
回答No.1

> IE6でヘッダーとコンテンツの間に隙間ができてしまいます。 > IE7、Firefox、Safariでは問題なく表示されています。 実際にソースを貼り付けて再構成してみましたが「ヘッダーとコンテンツの間に隙間」ができる、というのが<div id="top">~</div>と<div id="navi">~</div>との間の事でしたら、隙間ができるのはFirefoxであり、IE6.0/7.0はできていない様ですが? もしそうであれば、CSSに以下の定義を付け加えてみて下さい。 ---------------------------------------------------------------------- #topcont h1 { margin: 0; } #navicont ul { margin: 0; } ---------------------------------------------------------------------- <h1>や<ul>にはディフォルトの状態でブラウザ依存のマージンが与えられています。それを初期化して0にすると、環境(ブラウザ)による差がなくなります。

dex2
質問者

お礼

ご回答ありがとうございます。 CSSに以下の定義を追加してみましたが、変わりませんでした。 ---------------------------------------------------------------------- #topcont h1 { margin: 0; } #navicont ul { margin: 0; } ---------------------------------------------------------------------- 「ヘッダーとコンテンツの間に隙間」ができる、というのは <div id="top">~</div>と<div id="navi">~</div>との間の事になります。 IE6、IE5.5だけで隙間ができてしまい、IE7、FirefoxやSafariでは隙間なく表示されています。 自分で調べ、以下のCSSを追加してみましたが、変わりませんでした。 ---------------------------------------------------------------------- img { vertical-align:bottom; } li img { display:block; line-height:0pt; } a { line-height:normal; } ---------------------------------------------------------------------- IE7では隙間ができないので、IE6以前の特有の現象だと思うのですが… 引き続きよろしくお願い致します。

関連するQ&A

  • リストタグを用いた縦メニューで画像に隙間ができます(IE6)

    いつも皆さまには助けていただきありがとうございます。 さてまた今回も質問で申し訳ないのですが、リストタグを用いて縦のメニューを作成しています。 IE6でのみメニュー画像の上下に隙間が出来る現象が発生して困っております。(本当は隙間なくしたい) こちらの質問を参考にして左メニューの画像に「display:block;」や「vertical-align:bottom;」を付けてみましたが、変化なしです。 #left img{ border:none; display:block; vertical-align:bottom; } と入れたんですが、記入がおかしいでしょうか? 色々調べてみましたが、これ以上どういじって良いのかよく分かりません。 一部省略していますがソースを載せますので間違いをご指摘いただければ大変助かります。 よろしくお願いします。 【HTML】 <html> <head> <link rel="stylesheet" href="css/ie6.css" type="text/css" /> <title>タイトル</title> </head> <body> <div id="container"> <!--ヘッダー部分--> <div id="header"> <div id="headerImg" title="タイトル"> </div><!--id:headerImgEnd--> <div id="headerMenu"> <ul> <li></li> <li></li> <li></a></li> </ul> </div><!--headerMenuEnd--> </div><!--id#headerEnd--> <div id="contents"> <!--左メニュー--> <div id="left"> <div id="left_menu"> <ul> <li><a href="a.html" id="a" title="a">a</a></li> </ul> <ul> <li id="b" title="b"></li> <li><a href="c.html" id="c" title="c"></a></li> <li><a href="d.html" id="d" title="d"></ul> </div><!--id:left_menuEnd--> </div><!--id:leftEnd--> <!--メイン--> <div id="main"> </div><!--mainEnd--> <!--フッター--> <div id="footer"> </div><!--id:containerEnd--> </div> </body> </html> 【CSS】 body{ margin:0; padding:0; text-align:center; font-size:14px; } #container{ margin:0 auto; width:800px; text-align:left; borer:solid 1px #999; } #header{ width:800px; } div#headerImg{ width:800px; height:138px; background-image:url(img/title.gif); background-color:#00FFcc; } div#headerMenu{ width:800px; } #contents{ width:800px; } /*左メニュー*/ #left{ float:left; width:180px; } #left_menu ul{ list-style:none; padding:0; margin:0; } #a{ background-image:url(../img/a.gif); width:180px; height:69px; display:block; margin-top:0px; margin-left:0px; } #b{ background-image:url(../img/b.gif); background-repeat:no-repeat; width:180px; height:30px; display:block; margin-top:0px; margin-left:0px; } #c{ background-image:url(../img/c.gif); background-repeat:no-repeat; width:180px; height:25px; list-style:none; display:block; margin-top:0px; margin-left:0px; } a#c:hover{ background-image:url(../img/c02.gif); background-repeat:no-repeat; } #d{ background-image:url(../img/d.gif); background-repeat:no-repeat; width:180px; height:24px; list-style:none; display:block; margin-top:0px; margin-left:0px; } a#d:hover{ background-image:url(../img/d02.gif); background-repeat:no-repeat; } /*メイン*/ #main{ float:right; width:620px; margin:-14px 0 0 0; } /*フッター*/ #footer{ clear:both; width:800px; height:47px; }

    • ベストアンサー
    • HTML
  • divの間にすき間ができる

    入れ子にされたdivとdivの間で隙間ができて困っております。 構造は<div id="header2">内に企業ロゴイメージ部を<h1>タグで設置し、 入れ子で<div class="headnavi">を入れ、隙間なく<div id="navi"> を表示させるつもりですが、<div id="header2">と<div id="navi">の間に ブラウザで見たときに隙間ができてしまいます。 どうすれば隙間無く表示させることができるでしょうか? <div style="clear:both"></div>を入れてみては?と言われましたので 入れてみましたが効果はなく困っております。 【html部】 <div id="header2"> <h1><a href="index.html"><img src="images/logo.jpg" alt="" width="270" height="80" border="0" /></a></h1> <div class="headnavi"> <ul> <li id="access"><a href="access/index.html">地図・連絡先</a></li> <li id="inquiry"><a href="inquiry/index.html">お問い合わせ</a></li><li id="sitemap"><a href="#">サイトマップ</a></li> </ul> </div> <div style="clear:both"></div> </div> <div id="navi"> <ul> <li id="aboutus"><a href="about_us/index.html">会社案内</a></li> <li id="works"><a href="works/index.html">業務紹介</a></li> <li id="enviro"><a href="enviroment/index.html">環境方針</a></li> <li id="carrier"><a href="carriers/index.html">採用情報</a></li> </ul> </div> 【スタイルシート】 #header2 { height: 80px; margin-bottom: 0px; padding-bottom: 0px; } #header2 h1 { padding-top: 0px; margin: 0px; float: left; padding-bottom: 0px; padding-left: 14px; } #header2 .headnavi { height: 24px; margin-right: 14px; } #header2 .headnavi ul { padding-top: 0px; padding-bottom: 0px; margin-top: 0px; margin-bottom: 0px; float: right; height: 24px; } #header2 .headnavi li { text-indent: -9999px; display: inline; list-style-type: none; } #header2 .headnavi li a { text-decoration: none; display: block; height: 24px; overflow:hidden; float: left; } /*------off----- */ #header2 .headnavi li#access a { width:124px; height: 24px; background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; } #header2 .headnavi li#inquiry a { width:125px; height: 24px; background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; background-position: -124px 0px; } #header2 .headnavi li#sitemap a { width:121px; height: 24px; background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; background-position: -249px 0px; } /*------hover------- */ #header2 .headnavi li#access a:hover { background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; background-position: 0px -24px; } #header2 .headnavi li#inquiry a:hover { background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; background-position: -124px -24px; } #header2 .headnavi li#sitemap a:hover { background-image: url(../images/head_navi.jpg); background-repeat: no-repeat; background-position: -249px -24px; } <div style="clear:both"></div>

  • IE6でナビ下に隙間ができてしまいます。

    横並びのナビの下に隙間無く内容を入れたいのですが、IE6だとナビ下に2ミリ位の隙間ができてしまいます。 いろいろ調べてIE6対策でline-height: 0・margin: 0を追加してもうまくいきません。 何が間違っているのか、ご支持お願いします。 <body> <div id="wrapper"> <div id="headnavi"> <ul> <li id="A"><a href=""><span>A</span></a></li> <li id="B"><a href=""><span>B</span></a></li> <li id="C"><a href=""><span>C</span></a></li> <li id="D"><a href=""><span>D</span></a></li> <li id="E"><a href=""><span>E</span></a></li> <li id="F"><a href=""><span>F</span></a></li> </ul> </div><!-- / #headnavi --> <div id="pro_back"> <p>○○○○○</p> </div><!-- / #pro_back --> </div><!-- / #wrapper --> </body> </html> *{ margin: 0px; padding: 0px; font-weight: normal; list-style-type:none; } body { width: 100%; font-size: 75%; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif; line-height: 180%; color: #333; } #wrapper { position: relative; width: 960px; margin-left:auto; margin-right:auto; } #pro_back { width: 960px; height: 623px; background-image: url(images/pro_back.gif); background-repeat: no-repeat; margin: 0; } #headnavi { width:960px; height: 33px; margin: 0; } #headnavi ul { line-height: 0; margin: 0; } #headnavi ul li a { display: block; width: 172px; text-decoration: none; height: 33px; } #headnavi ul li a span { position: absolute; width: 0; height: 0; padding: 0; overflow: hidden; } ul li#A a { position: absolute; left: 890px; top: 0px; background-repeat: no-repeat; background-position: 0 0; background-image: url(images/topbotan.gif); margin: 0; } ul li#B a { position: absolute; left: 632px; top: 0px; background-repeat: no-repeat; background-position: 0 0; background-image: url(images/link.gif); margin: 0; } ul li#C a { position: absolute; left: 474px; top: 0px; background-repeat: no-repeat; background-image: url(images/mail.gif); margin: 0; } ul li#D a { position: absolute; left: 316px; top: 0; background-repeat: no-repeat; background-image: url(images/illustration.gif); margin: 0; } ul li#E a { position: absolute; left: 158px; top: 0; background-repeat: no-repeat; background-image: url(images/designwork.gif); margin: 0; } ul li#F a { position: absolute; left: 0px; top: 0; background-position: 0 0; background-repeat: no-repeat; background-image: url(images/profile.gif); margin: 0; }

    • 締切済み
    • CSS
  • FFにおけるDIVタグ間の隙間について

    たびたびお世話になります。 自分なりにあちこち検索したのですが、解決できるものが見つかりませんでしたので、質問させていただきます。 今回初めてCSSを使ってHPを作成しているのですが、部分的に<DIV>~</DIV>と<DIV>~</DIV>の間に10px程の隙間が発生します。 IE系のブラウザでは特に問題ないのですが、Mozila系で再現されるようです。 どのようなタグを挿入、あるいは削除すれば解決できるでしょうか? 以下、該当部のタグになります。 【html】 <body> <div id="header"> <a href="http://****.jp/"> <img src="../img/images/images/title.jpg"width="207"height="33"> </a> </div> <div id="topphot1"> <div id="topphot2"> <!-- TOP画像入れ替える時はここのファイルを変更。横711px縦150pxのもののみ --> <img src="../img/topphoto.jpg" width="711px" height="150px" /> <!-- ↑↑↑ --> </div> <div id="q_menu"> <ul class="q_menu"> <li><a href="#"><img src="../img/icon_m.gif" width="23" heigh="23" /></a></li> <li><a href="#"><img src="../img/icon_s.gif" width="23" heigh="23" /></a></li> <li><a href="#"><img src="../img/icon_r.gif" width="23" heigh="23" /></a></li> </ul> </div> </div> <div id="m_menu"> <ul class="m_menu_ro"> <li><a href="#" class="bbs"></a></li> <li><a href="#" class="battle"></a></li> <li><a href="#" class="event"></a></li> <li><a href="#" class="hunt"></a></li> </ul> </div> 【css】 #header{ padding:0 auto 0 auto; margin:0 auto 0 auto; background-color:#7fd137; color:#ffffff; width:800px; height:33px; } #topphot1{ margin:0 auto 0 auto; padding:0 auto 0 auto; position:relative; background-color:#edf2e9; background-image:url(../img/images/HP_03.jpg); background-repeat:no-repeat; background-position:center; color:#696969; width:800px; height:220px; text-align:center; } #topphot2{ margin-top:8px; padding-top:8px; margin-left:auto; margin-right:auto; position:relative; color:#696969; width:711px; height:150px; text-align:center; } #q_menu{ position:absolute; left:50px; bottom:10px; } ul.q_menu{ width:69px; height:23px; margin:0px; padding:0px; } ul.q_menu li{ float:left; } 不慣れなもので、タグ自体がちょっと滅茶苦茶なカンジもするのですが…。 aタグ周囲の改行の削除、vertical-alignをbottomに設定するなどでは解消できませんでした。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • CSSの左横に隙間ができてしまいます。

    画像の左横に謎の隙間(8mmほど)ができて埋まりません。 そのため、4枚収めたい画像のうち、最後の1枚が改行されてしまっています。 padding や vartical-align、text-alignなど試してみましたが、ダメでした。 とても困っています、どなたかご教示くださいますようお願いいたします。 << CSS >> #header { width:940px; height:59px; margin: 0 0 20px 0; } #logo { width:300px; height:59px; float:left; margin: 0 20px 0 0; } #menu { width:620px; height: 59px; padding: 0; margin: 0; float:right; } #menu img { padding-top:8px; border:none; } #menu ul { margin:0; } #menu ul li { margin: 0px; padding: 0px; list-style-type: none; display:inline; float:left; } << HTML >> <div id="header"> <div id="logo"> <img src="img/logo.gif" width="298" height="59" alt="ロゴ"> </div><!-- /#logo --> <div id="menu"> <ul> <li><img src="img/btn_A.gif" width="194" height="51"></li> <li><img src="img/btn_B.gif" width="140" height="51"></li> <li><img src="img/btn_C.gif" width="149" height="51"></li> <li><img src="img/btn_D.gif" width="137" height="51"></li> </ul> </div><!-- /#menu --> </div><!-- /#header -->

    • ベストアンサー
    • CSS
  • CSSでボックス内の隙間が消えない

    MacのDw2004MXで、ulリストでマークアップしたナビゲーションを横に並べてa要素に背景を設定し、テキストをレフトアウトしています。 Mac上のブラウザでは問題なのですが、WinのIE6で見てみると文字サイズが最小の時以外はナビの上部に白い隙間が表示されてしまいます。もちろんpaddingもmarginも0を指定しています。隙間は文字サイズが最大のとき高さ3px、文字サイズ中のとき高さ2pxです。 しかも、a要素のfont-sizeとline-hightはpxで指定しているのでWinの文字サイズ変更は効かないはず… ulタグをdivで括り、divのpaddingもmarginも0としています。 お助けください。 ====XHTML===== <div id="nav"> <ul><li><a id="nav1" href="index.html">TOP</a></li><li><a id="nav2" href="room.html">page1</a></li><li><a id="nav3" href="price.html">page2</a></li><li><a id="nav4" href="service.html">page3</a></li><li><a id="nav5" href="meal.html">page4</a></li><li><a id="nav6" href="reserve.html">page5</a></li><li><a id="nav7" href="access.html">page6</a></li></ul> </div> ======CSS===== #nav{ width:705px; height:30px; margin:0; padding:0; } #nav ul{ list-style-type:none; margin:0; padding:0; height:30px; } #nav ul li{ display:inline height:30px; margin:0; padding:0; height:30px; } #nav ul li a{ display:block; margin:0; font-size:6px; height:30px; float:left; background:url(../i/g/nav.gif) no-repeat 0 0; text-indent:-5000px; line-height:10px; }

  • IE7で表示すると画像に隙間があきます。

    WEBサイトを作っているのですがIE7で表示すると 画像と画像の間にスペースが出来てしまいます。 他のブラウザだとスペースが出来ないのですが原因は何なんでしょうか? HTML <div id="sidebar"> <div id="sidebar-bg"> </div> <div id="image-navigation"> <div class="navi"> <ul> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="39" alt="○○" /></a></li> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="35" alt="○○" /></a></li> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="35" alt="○○" /></a></li> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="35" alt="○○" /></a></li> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="35" alt="○○" /></a></li> <li><a href="#.html" title="○○"><img src="images/○○.png" width="200" height="35" alt="○○" /></a></li> </ul> </div> </div> </div> CSS #sidebar{ width: 200px; float: left; } #sidebar-bg{ background-color: #FFF; filter:alpha(opacity=50); -moz-opacity: 0.5; opacity:0.5; position:absolute; left:0; top:42px; z-index:-1; width: 200px; height:100%; } ul, li { margin:0; padding:0; list-style:none; } #image-navigation ul li a { display:block; width:200px; }

    • ベストアンサー
    • HTML
  • ieでの微妙な隙間(CSS)

    以下のソースでhtmlを表示するとie6でpage_topとfooterの間に 3~5pxほどの隙間が開いてしまいます。 しかしfirefoxで表示すると隙間なく表示されます。 特にmarginなど指定していないので何が原因なのかが全くわかりません。 どのようにしたらie6でも隙間なく表示できるようになるでしょうか? 以下ソースの抜粋です。宜しくお願いします。 //CSS #page_top { clear: both; width: 900px; height: 24px; margin: 0 auto; padding: 0; background: #fff; text-align: right; } #footer { width: 900px; margin: 0 auto; padding: 10px 0 5px 0; background: #fff url(img/footer_bg.gif) repeat-x; text-align: center; } //html <div id="page_top"> <a href="#top"> <img src="img/btn.gif" alt="ボタン" width="114" height="24" /> </a> </div> <div id="footer"> あいうえおかきくけこさしすせそ・・・ </div>

  • IE6で見るとメニューバーが崩れてしまいます

    ホームページを作成したのですが、ページによって上部に設置したメニューバーが見れたり見れなかったりしてしまいます。CSSハックでIE6でもページ自体は何とか見れるようにはなったのですが、何ページかはどういうわけかトップ部分にあるメニューが画像ではなく、文字で現れて正常に見ることができません。どなた様かお詳しい方、教えて頂けませんでしょうか。下記にhtmlとcssを記述します。 〈html〉 <html> <body> <div class="headbg"><img src="head_bg1.jpg" alt="" border="0"></div> <div class="header"><a href="#" border="0"> <div class="rogo"> </div> </a> <div id="globalnavi"> <ul> <li id="menu1"><a href="#">メニュー1</a></li> <li id="menu2"><a href="#" >メニュー2</a></li> <li id="menu3"><a href="#">メニュー3</a></li> <li id="menu4"><a href="#">メニュー4</a></li> <li id="menu5"><a href="#">メニュー5</a></li> <li id="menu6"><a href="#">メニュー6</a></li> </ul> </div> <div class="main"></div> </div> </body> </html> <CSS> .headbg { height:400px; width: 100%; min-width:900px; border:0px solid #F00; position:absolute; top:66px; left:0; overflow:hidden; background: url(head_bg_bg.jpg); background-repeat:repeat-x; } .rogo { background-image: url(rogo.jpg); background-repeat: no-repeat; height: 160px; width: 160px; padding: 0px; margin-top: 8px; margin-right: 0px; margin-bottom: 11px; margin-left: 33px; position: relative; border: 0px solid #000; clear: both; float: left; position:relative; } .header { width: 900px; height:300px; padding:0px; margin-left: auto; margin-right:auto; text-align:left; margin-top:0px; border:0px solid red; } .main { height:920px; width: 900px; min-width:900px; background-color:#ffffff; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", "MS PGothic", sans-serif; padding: 0px 0px 0px 0px; margin-left: auto; margin-right: auto; text-align: center; margin-top:65px; } #globalnavi { margin-left:auto; margin-right:auto; margin-top:-170px; text-align:left; top:0px; left:0px; padding:0px; width:700px; height:52px; list-style:none; overflow:hidden; border: 0px solid red; float:right; clear:both; } #globalnavi ul { list-style-type: none; margin: 0; padding: 0; height: 52px; overflow: hidden; } #globalnavi li { text-indent: -9999px; float:left; width: 116px; height: 52px; margin: 0; padding-right: 0px; border:0px solid #333; } #globalnavi a { display: block; position: relative; width: 100%; height: 52px; } #menu1 a { background: url(menu1_active.jpg) no-repeat 0 0; left:0px; margin-left:0px; } #menu2 a { background: url(menu2.jpg) no-repeat 0 0; margin-left:0px; } #menu3 a { background: url(menu3.jpg) no-repeat 0 0; margin-left:0px; } #menu4 a { background: url(menu4.jpg) no-repeat 0 0; margin-left:0px; } #menu5 a { background: url(menu5.jpg) no-repeat 0 0; margin-left:15px; } #menu6 a { background: url(menu6.jpg) no-repeat 0 0; margin-left:15px; }

  • このプログラムにある問題点を教えて下さい

    プログラムを自分で作ってみました。 形はイメージ通りですが自信がありません。 何か問題点があるように思えてなりません。 これで正しいのでしょうか? <style type="text/css"> #aaa{ width: 850px; background-color: #eee; } .CCC { width: 750px; height: 133px; margin-left: 35px; margin-top: 15px; } .CCC ul{ margin: 0; padding: 0; list-style: none; } .CCC li.C0 { float: left; } .CCC li.C0 img { padding: 5px; border: 1px solid #ccc; } .CCC li.C1 { width: 200px; padding: 3px 20px 3px 12px; margin-left: 25px; font-size: 16px; font-weight: bold; font-family: "MS UI Gothic"; color: #F05; border-bottom: 1px solid #F05; float: left; } .CCC li.C2 { width: 300px; font-size: 14px; float: left; line-height:150%; margin-left: 50px; margin-top: 15px; } .CCC li.C3 { width: 160px; float: right; } .CCC li.C3 .C4 img{ border: 0; border-style: none; margin-bottom: 25px; } .cf { clear:both; font-size: 15px; color: #ccc; text-align: center; } </style> <div id="aaa"> <div class="CCC"> <ul> <li class="C0"><img src="image/image_case01.jpg" width="185" height="123"></li> <li class="C1">タイトルタイトル &nbsp&nbsp&nbsp/ タイトル</li> <li class="C2">コメントコメントコメントコメントコメントコメントコメントコメントコメントコメントコメントコメント</li> <li class="C3"><span class="C4"><a href=""><img src="1.jpg" width="160" height="30"></a></span><span class="C4"><a href=""><img src="2.jpg" width="160" height="30"></a></span></li> </ul> </div> <div class="cf">・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・</div> <div class="CCC"> <ul> <li class="C0"><img src="image/image_case01.jpg" width="185" height="123"></li> <li class="C1">タイトルタイトル &nbsp&nbsp&nbsp/ タイトル</li> <li class="C2">コメントコメントコメントコメントコメントコメントコメントコメントコメントコメントコメントコメント</li> <li class="C3"><span class="C4"><a href=""><img src="1.jpg" width="160" height="30"></a></span><span class="C4"><a href=""><img src="2.jpg" width="160" height="30"></a></span></li> </ul> </div> <div class="cf">・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・</div> </div>

    • ベストアンサー
    • HTML

専門家に質問してみよう