• 締切済み

IE7の<div>のバグ

IE7でgooglemapの表示がおかしくなります。 <div id=~>で指定した、googlemapを表示させる部分だけ、 スクロールしても左下に必ず表示されるようになってしまいます。 しかもスクロールバーの上にマップが出てくる状態になってしまっています。 親ページのcssに overflow:hidden その下に overflow:auto が設定されています。 フレームが上下に分かれていて、外枠のスクロールは表示せず、フレーム下部のスクロールだけ表示させるためです。 mapはフレーム下部に設定しているのですが、どうやら外枠のスクロールの設定に依存しているようです。 floatは使用していません。 <div id~>にposition:relativeを指定してもだめでした。 一番上位のoverflowではなく、そのひとつ下のoverflowの設定にさせたい場合はどうしたらよいのでしょうか。 他のdivタグはそのようになっています。 また、IE8、IE9でも目的の動きになっています。 IE7だけが上位を見てしまうようです。

みんなの回答

回答No.1

IEはヴァージョンによらず、CSSにおけるバグの報告があるようです。 バグであれば対応が困難であり、ここで悩むのは時間の無駄です。 私も複数のGooglemapを<div id=~>で並べようとして、IE9の表示が 思い通りにならなくて苦労しました。 その時取った対応は、tableで幅と高さを決め打ちしておき、そこに <div id="マップid" style="width: 幅px; height: 高さpx">で 入れ込むというものです。 この方法だと、マップ表示の位置を決めるのは簡単で、ブラウザの 種類によって見た目が異なる問題も発生しません。

すると、全ての回答が全文表示されます。

関連するQ&A