• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:スクロールメニューが宣言を入れるとIEだけでしか動作しないので、困っています。)

スクロールメニューの宣言によるIEの動作不具合とCSS表示の崩れの原因を教えてください

このQ&Aのポイント
  • スクロールメニューの宣言を入れるとIEでしか動作しない問題が発生しています。
  • 一方、宣言を抜くとIE以外では動作しますが、CSS表示が崩れてしまいます。
  • IEでの問題の原因として、<!DOCTYPE html>宣言が関係している可能性があります。

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

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

この場合DOC宣言はあまり関係ないと思うんですけど BODY部とかCSSが載せてないので解らないけど id="scrollmenu"の要素のpositionはabsoluteになっていますよねえ。 そうじゃないと、menu.style.top = scrollTop;しても動かんはずでは、 position:absolute;するとCSSレイアウトが崩れるのは当然のような... そもそも、スクロール用途にstyle.topみたいなスタイル属性変更を 使うのが無理があるのではないかと、どこかに例があったのでしょうか? どうせjavascript使うのだから、window.scrollTo()を使った方がよいのでは <script type="text/javascript"> window.onload = scrolltop; function scrolltop() { var menu = document.getElementById('scrollmenu'); window.scrollTo(0,menu.offsetTop); } </script> みたいに

ziggy_mao
質問者

お礼

遅くなってすみません。 ご回答ありがとう御座います。 ご指摘の部分を調整したら、動きました。 しかしなぜ、DOC宣言をいれると、 IEだけで動いたのでしょう。

関連するQ&A

専門家に質問してみよう