• 締切済み

IE9のみ、背景が縦に2回表示される

質問よろしくお願い致します。 タイトル通り、IE9でのみ、背景画像が縦に2回連続して表示されてしまいます。 Macの全てのブラウザ、Win Chrome、Safari、Firefox、IE6~8では問題なくきちんと表示されます。 IE9だけなんです。。。 CSSは一部分、直接HTMLに記載していますが、外部CSS(commonで使用している方など)に書いても同じでした。 ソースは下記になります。 ======================================= <div class="w1000 box_shadow" style="height:645px;background:url(images/bg1.jpg) left top no-repeat;"> <div class="w960"> <h3><img src="images/ttl1.png" width="800" height="500" alt="title1" class="p-top25" /><h3> <p class="m-top30"> キャプションキャプションキャプション<br /> キャプションキャプションキャプションキャプションキャプションキャプションキャプション <p> </div> </div> <div class="w1000 box_shadow" style="height:300px;background:url(images/bg2.jpg) left top no-repeat;"> <div class="w960"> <h3><img src="images/ttl2.png" width="800" height="300" alt="title1" class="p-top25" /><h3> <p class="m-top30"> キャプションキャプションキャプション<br /> キャプションキャプションキャプションキャプションキャプションキャプションキャプション <p> </div> </div> ======================================= 2つ縦にブロックをおいていますが、1つだけだときちんと表示されます。 背景画像と内包内容違いで複数おくと、この現象がおきます。 position:relativeやzoom:1も試してみましたがダメでした。 具体的な表示内容は、下記のようになります。(わかりずらいの画像も添付します) ================= 高さ645pxでbg1.jpg背景が表示:内容カラ ーーーーーーーーーーーーーーーーー 高さ645pxでbg1.jpg背景が再度表示:タイトル画像やキャプションが入る ================= ================= 高さ300pxでbg2.jpg背景が表示:内容カラ ーーーーーーーーーーーーーーーーー 高さ300pxでbg2.jpg背景が再度表示:タイトル画像やキャプションが入る ================= 原因や改善策などありますでしょうか? どうぞ宜しくお願い致します。

  • CSS
  • 回答数2
  • ありがとう数3

みんなの回答

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

 HTMLがデザインのために書かれているので、実際何をされたいかがさっぱりなのですが、原因はブロックを二つに解釈されているのでしょう。ウィンドウ幅を様々に変えて試すと原因がわかるかも。  その前に、示されたHTMLとキャプチャーでわからないところがあるのですが・・ <img src="images/ttl1.png" width="800" height="500" alt="title1" class="p-top25" /> と <img src="images/ttl2.png" width="800" height="300" alt="title1" class="p-top25" /> の画像、あまりに大きいのですが、キャプチャ画像では小さな[ttl1画像]になっています。??

watermusic333
質問者

お礼

ご回答ありがとうございます。 HTMLとキャプチャー内容が連動していなくて申し訳ありません。 こちらに投稿する為に、簡単に作成した画像だったので HTMLのttl画像サイズと見た目が合わなくなっておりましたm(_ _)m 問題は解決しました。 本当に単純な事だったのですが、内側のブロックに入れている内容で <h4>xxx</h4>があったのですが閉じタグにスラッシュが不足していました。。。 他の全ブラウザ大丈夫でIE9だけダメだったので、ソース確認をする前にてんぱり投稿してしまいました。 これからは投稿する前にまずはコードチェックからはじめます。 ありがとうございました。

noname#206842
noname#206842
回答No.1

考え方を、変えてみてください! デバイスは、それぞれ表示幅が、異なります。(高さではない:hight:autoでもいい) その辺のCSSを、直せばOKだと思います。 /* #Media Queries ================================================== */ /* Smaller than standard 960 (devices and browsers) */ @media only screen and (max-width: 959px) {} /* Tablet Portrait size to standard 960 (devices and browsers) */ @media only screen and (min-width: 768px) and (max-width: 959px) {} /* All Mobile Sizes (devices and browser) */ @media only screen and (max-width: 767px) {} /* Mobile Landscape Size to Tablet Portrait (devices and browsers) */ @media only screen and (min-width: 480px) and (max-width: 767px) {} /* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */ @media only screen and (max-width: 479px) {}

watermusic333
質問者

お礼

回答ありがとうございます。 今回はPC専用サイトなので、Media Queriesはあまり関係ないかな、と思うのですがPC専用サイトでも必要でしょうか? ちなみに、念のため試してみましたが依然IE9はダメでした。

関連するQ&A

  • CSSで背景画像をランダムに表示させたいのですが

    CSSで背景画像をランダムに表示させたいのですが、簡単な対応方法などありますでしょうか? 背景のランダム表示としてbody部分をjavascriptで背景のランダム処理はたくさんあるのですが、今回はスタイルシートでbodyではなく、サイト内のいち部分のクラス要素の背景をランダムに表示させたいと思っています。 <div class="main"> ここにコンテンツがあって、このmainのクラス要素の背景をランダムに変えたいです。 </div> スタイルシートの方では現在は .main { float:left; background-image:url(/image/top_bg01.jpg); background-repeat:no-repeat; min-width:736px; height:auto; border-right:1px solid #000000; } としており、このtop_bg01.jpgの部分の画像を top_bg01.jpg top_bg02.jpg top_bg03.jpg top_bg04.jpg top_bg05.jpg とランダムに表示させたいのですが、対応方法が分からずに困っています。 http://www.designwalker.com/2006/12/random-css.html はためしてみましたが、PHPがうまく対応できずに断念してしまいました。 どなた様か宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • IE6,7で画像の上に載せた文字がずれる

    HTMLなのですが、 画像が縦に3つつながって1つの画像のようになった状態で表示しようとしています。 さらに上と下の画像にはテキストを上にかぶせて表示します。 画像全体にリンクを貼ってあります。 下記のようなコードで作成した所、IE6,7でのみ、下記のバグが出てしまいました。 ・画像とテキストの縦位置のズレ ・画像間に2px程度の空白が生じる ・画像に設定したリンクが開かない 大変困っています。 どなたか原因と修正方法を教えていただけますでしょうか。 <a href="test.html"> <div style="position: relative; width: 183px; height: 265px; "> <img src="images/top.jpg" width="183" height="36" /> <div style="position: absolute; top: -11px; left: 55px;" class="font16b"> <p align="center">text1</p> </div> <img src="images/main.jpg" width="183" height="193" border="0" /> <img src="images/bottom.jpg" width="183" height="36" /> <div style="position: absolute; top: 218px; left: 4px; width: 181px;" class="font13"> <p align="left">text2</p> </div> </div> </a>

    • ベストアンサー
    • CSS
  • 複数指定の背景が表示されない

    困っているのでどなたかお力添えをお願いします。 htmlとbodyにそれぞれ別の背景画像を指定しているのですが、 IE6でのみ片方の背景が表示されません。 html { background: url(../images/bg.jpg) repeat center bottom; } body { background: url(../images/header-bg.jpg) repeat-x center top; } どうすれば表示されるようになるでしょうか? divを使う背景画像の複数指定が上手くいかなかったのでこのやり方をしています。

    • ベストアンサー
    • HTML
  • CSSで背景を多重化する方法

    CSSでdivの中の背景を多重化したいと思いまして、 なんとかお知恵を拝借できればと思い投稿させていただきました。 やりたいことは、添付の画像のように、テキストの量によって背景の●がちゃんと下に動いて欲しいのです。 こんな感じでできるかなと思って試行錯誤していましたが、ぜんぜんできませんでした。 【html】 <div class="parent"> <div class="bg_upper"> <div class="bg_lower"> <div class="content"> テキスト・・・ </div> </div> </div> </div> 【CSS】 div.parent { position:relative; } div.bg_upper { position:absolute; top:0; left:0; background:url(../images/bg_tl.png) left top no-repeat; } div.bg_lower { position:absolute; bottom:0; right:0; background:url(../images/bg_br.png) right bottom no-repeat; } <div class="content">に対して、height:100pxのように明示的に高さを指定してやるとそれらしくは なったのですが、高さは可変なので使えませんでした。 なんとかヒントいただけましたら助かります。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • スライド写真で2、3枚目をランダムで表示させるには

    bgSwitcherを使用してフェードインアウトするスライドショーを作りました。 [A固定]→[Bランダム]→[Bランダム]→[C固定] 1枚目、4枚目は指定画像に差替え表示できていますが、 2枚目、3枚目が同じ画像を表示してしまい、繰り返し再生しても再度ランダムに選んでくれず、初めに読み込んだ画像のままでした。 【実現したいこと】 ●imgBをランダム読み込みし、2枚目、3枚目で同じ画像が選ばれないようにしたい ●2巡目以降も、再生のたびにランダム処理を実施する どなたか、上記のものが実現できるように出来ないものでしょうか。 どうぞよろしくお願いいたします。 <!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="UTF-8"> <title></title> <script src="js/jquery.js" type="text/javascript"></script> <script src="js/jquery.bgSwitcher.js" type="text/javascript"></script> <script language="javascript"> <!-- // JavaScript Document var imgA = ["images-top/A.jpg"], imgC = ["images-top/C.jpg"]; imgB = new Array(); imgB[0] = "images-top/B1.jpg"; imgB[1] = "images-top/B2.jpg"; imgB[2] = "images-top/B3.jpg"; imgB[3] = "images-top/B4.jpg"; imgB[4] = "images-top/B5.jpg"; n = Math.floor(Math.random()*imgB.length); jQuery(function($) { $('#bgSwitch-fadeOut').bgSwitcher({ images: [imgA, imgB[n], imgB[n], imgC], interval: 1000, fadeSpeed: 1000, }, true); }) --> </script> <style type="text/css"> .bg { width: 160px; height: 160px; padding: 20px; line-height: 1.6; } </style> </head> <body> <div> <div id="bgSwitch-fadeOut" class="bg"> <p>テキスト</p> </div> </div> </body> </html>

  • firefoxで見るとdiv背景画像がスクロールで消えてしまいます

    http://www.geocities.jp/testac2007/ bodyに「top_bg.gif」という背景画像指定をした上で更にdivを重ね、そのdiv内に「side_860.gif」という背景画像を指定しています。 ieだと意図した通りに表示されるのですが、 FirefoxやNetscapeで確認すると、表示されているページより下部のスクロール以下の背景画像が表示されません。 何とか同症状についてネットで検索し試行錯誤してみたのですが、解決に至りませんでしたのでこちらでヘルプさせていただきました。皆さんのお知恵を拝借いただきたいです。 ■■■HTMLの概要■■■ <body> <div id="side_bg"> <div id="outline"> <div id="A01">○○○</div> <div id="A02"> <div class="A02_left">○○○</div> <div class="A02_right">○○○</div> <br class="c-both"> </div> <div id="B01">○○○</div> </div> </div> </body> ■■■CSSの概要■■■ body { margin:0px auto; background-image:url(images/top_bg.gif); } #side_bg { width:860px; height:100%; margin:0 auto; background:#ffffff url(images/side_860.gif); overflow:visible; } #outline { width:830px; margin:0 auto; background-color:#FFFFFF; } .c-both { clear:both;} #A01{ width:830px; margin:15px 0px 4px 0px; overflow: auto; } #A02{ width:830px; margin:0px 0px 4px 0px; overflow: auto; } .A02_left{ width:304px; float:left; } .A02_right{ width:526px; float:right; margin-top:4px; } #B01{ width:730px; margin:20px 50px; }

    • ベストアンサー
    • CSS
  • ie6 でリストが横に並ばず縦に並んでしまう

    ie6のコーディングでノイローゼになりそうです。5時間くらいいろいろ試行錯誤しましたが、解決できません。 <div class="pic0"> <ul> <li class="pic1"><img src="images/pic1.jpg"/></li> <li class="pic1"><img src="images/pic2.jpg" /></li> <li class="pic1"><img src="images/pic3.jpg" /></li> <li class="pic1"><img src="images/pic4.jpg"/></li> <li class="pic1"><img src="images/pic5.jpg"/></li> </ul></div> .pic0{ width: 250px; height:40px; float: left; display:inline; padding-top: 10px; padding-bottom: 10px; overflow:hidden; } .pic1 li { float: left; height: 47px; width: 36px; display:block; margin-left:3px; margin-right:3px; } ie6のみ縦に並んでしまいます。 疑ったもの ・haslayout *{ zoom:1; } {line-height:0;} ・marginが倍になるバグ widthの指定 ・cssが効いていない ・ ネガティブマージン など ie6のcssを読み込ませるなど、何でもいいので、ie6のリストが横にさせる方法はないでしょうか。 雑文ですが、どうかお願いします。助けてください。

    • ベストアンサー
    • CSS
  • firefoxで背景が表示されません

    こちらのQAを見て、floatを消してみたりclear入れてみたりしてみましたが一向に変化しません、 navで指定した背景画像がIEでは出てforefoxでは出ません・・どこをどう直したらよいのでしょうか・・・ ------css----------- body{ background:url(img/bg.jpg); padding:0; width: 775px; margin: 0 auto; } wrapper{ padding:0; width:755px; position:relative; } #head { margin: 0px; height: 54px; padding: 0px; } h1{ margin: 0px; padding: 0px; width: 177px; height: 59px; position: relative; top: 0px; right: 0px; background: url(img/logo.jpg) no-repeat; text-indent: -9999px; text-decoration: none; } #head strong { margin: 0px; padding: 0px; height: 15px; font-size: 12px; color: #FFFFFF; position: absolute; top: 3px; line-height: 15px; text-indent: 350px; } #head img { height: 33px; width: 335px; position: relative; top: -44px; float: right; padding: 0px; margin: 0px 10px 0px 0px; } .main_img { background: url(../img/main_img_bg.jpg) no-repeat; width: 755px; height: 390px; display: block; clear: both; margin: 0px; padding: 0px; position: relative; top: -35px; } .main_img .nav { background: url(img/nav_img.png) no-repeat; height: 369px; width: 208px; margin: 0px; padding: 0px; } .clear { clear: both; } .box01 { margin: 0px; padding: 0px; clear: both; width: 755px; } ---------------html----------------- <body> <!-----------------------wrapper(S)------------------------------------> <div id="wrapper"> <!-----------------------head(S)------------------------------------> <div id="head"> <h1>Bar TRACY バートレイシー</h1> <strong>心斎橋・アメ村barのバー</strong> <img src="css/img/head_tel.jpg" alt="06" /></div> <!-----------------------head(E)------------------------------------> <!-----------------------main_img(S)------------------------------------> <div class="main_img"> <!-----------------------menu(S)------------------------------------> <div class="nav"> <ul> <li class="home"><a href="index.html">ホーム</a></li> <li class="menu"><a href="menu.html">メニュー</a></li> <li class="access"><a href="access.html">アクセス</a></li> <li class="staff"><a href="staff.html">スタッフ紹介</a></li> <li class="event"><a href="event">イベント情報</a></li> <li class="contact"><a href="event">お問い合わせ</a></li> </ul> mixi <p>mixiコミュニティ良かったら コミュに遊びに来てください!</p> </div> <!-----------------------nav(E)------------------------------------> </div> <!-----------------------main_img(E)------------------------------------> <div class="clear"></div> <!-----------------------cont(S)------------------------------------> <div class="cont"> <!-----------------------box01(S)------------------------------------> <div class="box01"> <!-----------------------news(S)------------------------------------> <div class="news"> <h2>ニュース</h2> 画像 <p>サンプルテキスト</p> </div> <!-------news(E)--------> <!-----shop_com(S)------> <div class="shop_com"> <p> ショップインコメント</p> </div> <!-----shop_com(E)----> </div> <!---box01(E)---> <!--box01(S)--> <div class="box01"> <!---bana01(S)---> <div class="bana01"> チケット </div> <!--bana01(E)--> <!---shop_info(S)----> <div class="shop_info"> <h2>ショップ情報</h2> 地図 <dl> <dd>TEL:</dd><dt>06-0000-0000</dt> <dd>住所:</dd><dt>大阪市中央区 </dt> </dl> <dd>mail:</dd><dt>m@00000</dt> <!-----shop_info(E)---> </div> <!--box01(S)--> <!----footer(S)----> <div id="footer"> <p>Homeホーム | Menuメニュー | Accessアクセス | Staffスタッフ | Eventイベント | Contactotお問い合わせ</p> </div> <!---footer(E)--> </div> <!--wrapper(E)--> </body> </html>

  • 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
  • css で 「Top へ戻る」 の書き方

    h2 で右側に 「Top へ戻る」 を置きたいんですが、 以下のように書いてみると IE6 で背景画像が表示されないのと かなり無駄が多いなと思いまして、なにか良い書き方ご存知でしょうか... <style type="text/css"> .h2_container{ background: url(images/bg_h2.jpg); } .title{ width: 500px; float: left; } .top{ width: 100px; float: left; } .clear{ clear: both; } </style> <div id="h2_container"> <div class="title"><h2>内容のタイトル</h2></div> <div class="top"><a href="#">Top へ戻る</a></div> <div class="clear"></div> </div>

    • ベストアンサー
    • CSS

専門家に質問してみよう