• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:「position:absolute」のIEのバグへの対処方法)

「position:absolute」のIEのバグへの対処方法

このQ&Aのポイント
  • CSSとJavascriptを使って、プルダウンメニューを作ったのですが、IE7でうまく動かない為ネット検索したところ、CSSの「position:absolute;」に対して、「"absoluteした要素が消える"というIEのバグ?」の記事に出会いました。
  • このため「position:relative;」としてみたのですが、メニューの下のコンテンツがプルダウンメニューのプルダウンされる大きさの分だけ下に下がって空間が空いてしまい、メニューバーの下にコンテンツがすぐ在ってその上にプルダウンするメニューが重なる、という表示ができなくなってしまいました。
  • なにかよい方法はありますでしょうか。

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

  • ベストアンサー
回答No.2

細かな内容が分らないので、上手く説明出来ませんが、妥協案としては position: relative;した要素のmargin-bottom等にネガティブマージンを 適用(-○○px等)してあげて、IE6対策でoverflow:hiddenを使えば 対処療法にはなるのでは。。 私の場合、position:absoluteして消えた場合は、基本前後のfloatが影響しているか、 text-align等が悪さしているか、たまにz-indexで後ろに隠れてしまっている か、絶対配置の基準になるposition:relativeの位置がおかしいかを考え、一つづつ潰していきます。

tomoko_fujita
質問者

お礼

回答有難うございました。 CSSについてまだ素人なので、片っ端からネット検索かけてプルダウンメニューのサンプルを探し、色々試してデザイン・動作とも上手く使えそうなものにHTMLと併せて書き直しました。 今回のご回答については、HPの改定時にまた役立てようと思います。

その他の回答 (1)

回答No.1

私のほうで詳しく実験したわけでは無いのですが、 下記の参考URLのサイトが役に立つのではないでしょうか?

参考URL:
http://jmblog.jp/archives/180
tomoko_fujita
質問者

お礼

ご紹介のサイトは既に見ていました。「clear」は使用してないので「width:100% の float」だと思ったのですが、不具合はIE7でなので、それも違う。とりあえず「<div class="extra">extra box</div>」の追加を試しましたが何も変わりませんでした(~_~)

関連するQ&A

専門家に質問してみよう