- ベストアンサー
ウィンドウの表示位置について
スマートフォンでポップアップを表示させています。 現状、position:fixedで画面のトップから10pxのところに表示させているのですが、縦長のポップアップの場合、見切れてしまいます。fixedをつかっているため、スクロールが効かなくて、ポップアップの下端がみれません。 常に「表示画面上のトップから10px」という風にしたいのですが、可能でしょうか。 $(window).offset().top をしたら、undefineになってしまって。。。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
何かのライブラリを使用しているみたいですが… scrollTop() とかでは? 他には、position:fixedにするなら、高さを設定しておいてそれ以上は要素自信のスクロールバーを表示させるとか、表示内容の量がある範囲までとわかっているのなら、min-widthを設定して横スクロールで見えるようにするとか…
その他の回答 (1)
- fujillin
- ベストアンサー率61% (1594/2576)
回答No.2
No1です。 >画面上の表示されている範囲の上から、その取得した値でもって >計算されてしまい、結局すごく見切れてしまいます かえって下のほうに表示されるってことでしょうか? それって、操作しようとしている要素が、bodyに対してabsoluteとなるように設定されていないのでは? それとも、scrollTop()で画面のスクロール量を取得できないってことでしょうか?
質問者
お礼
fujillin さま bodyにposition:absolute を設定し、ポップアップを出すタイミングで、ポップアップ部分(positoin:absolute)にtopの値を$("body").scrollTop()としているのですが、画面枠から見切れ、上の方に配置されてしまいます。
お礼
ご連絡ありがとうございます! scrollTop()の値を取得して試してみたのですが、わたしの試し方がよくなかったのか、画面上の表示されている範囲の上から、その取得した値でもって計算されてしまい、結局すごく見切れてしまいます。。。。