【发布时间】:2014-04-28 09:57:20
【问题描述】:
我正在开发一个正在创建模式的项目。基本上,我有一个带有position: fixed; 的叠加层,该叠加层包含一个带有模态内容的 iFrame。 iFrame 的高度可能不同,当它不适合视口时,内容会被截断。此外,当我在模态中滚动时,唯一滚动的是覆盖层后面的背景层。
您应该能够在不移动背景层的情况下在 iframe 中向下滚动。我怎样才能做到这一点?
在 Firefox、Safari、Chrome 甚至 IE8 中一切正常。但是,该问题仅出现在 iPad/iPhone 上。
您可以在此处查看该问题的工作演示:http://mcash.dk/dev/overlay/
【问题讨论】:
-
我也遇到了你的问题,但我还没有想出解决方案。主要问题是 iOS 4.3 以后强制 iframe 使用网页的整个高度,使 css 的百分比值变得无用,并且模式要么位于页面的 50% 处,要么位于用户可能已经滚动过的顶部。我们可以做的是检查如何识别用户正在查看网页的哪个部分(例如向下 300px)将页面高度的一半添加到模态,顶部:(300+window.height()/2)px ;但是,我怀疑 window.height() 返回网页的整个高度。
标签: ios css iframe scroll modal-dialog