• ベストアンサー

ウィンドウの表示位置について

スマートフォンでポップアップを表示させています。 現状、position:fixedで画面のトップから10pxのところに表示させているのですが、縦長のポップアップの場合、見切れてしまいます。fixedをつかっているため、スクロールが効かなくて、ポップアップの下端がみれません。 常に「表示画面上のトップから10px」という風にしたいのですが、可能でしょうか。 $(window).offset().top をしたら、undefineになってしまって。。。

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

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

何かのライブラリを使用しているみたいですが… scrollTop() とかでは? 他には、position:fixedにするなら、高さを設定しておいてそれ以上は要素自信のスクロールバーを表示させるとか、表示内容の量がある範囲までとわかっているのなら、min-widthを設定して横スクロールで見えるようにするとか…

webama_fk
質問者

お礼

ご連絡ありがとうございます! scrollTop()の値を取得して試してみたのですが、わたしの試し方がよくなかったのか、画面上の表示されている範囲の上から、その取得した値でもって計算されてしまい、結局すごく見切れてしまいます。。。。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

No1です。 >画面上の表示されている範囲の上から、その取得した値でもって >計算されてしまい、結局すごく見切れてしまいます かえって下のほうに表示されるってことでしょうか? それって、操作しようとしている要素が、bodyに対してabsoluteとなるように設定されていないのでは? それとも、scrollTop()で画面のスクロール量を取得できないってことでしょうか?

webama_fk
質問者

お礼

fujillin さま bodyにposition:absolute を設定し、ポップアップを出すタイミングで、ポップアップ部分(positoin:absolute)にtopの値を$("body").scrollTop()としているのですが、画面枠から見切れ、上の方に配置されてしまいます。