iPad滚动到iframe顶部

Posted

技术标签:

【中文标题】iPad滚动到iframe顶部【英文标题】:iPad Scrolling to Top of iframe 【发布时间】:2014-02-16 00:01:39 【问题描述】:

我已尽力在可访问的地方重新创建它。 我有一个运行 ios7 的 ipad mini 并且正在使用类似的东西:

<div id="holder">
    <iframe   src="http://www.cnn.com" id="iframe"></iframe>
</div>

#holder 
    height:500px;
    width:100%;
    overflow:scroll;
    -webkit-overflow-scrolling: touch;

见小提琴: http://jsfiddle.net/khJgY/4/

现在的问题是,在 iframe 中滚动可以正常工作。但是如果你改变焦点(比如其他 html/CSS/JS 编辑框之一),iframe 会滚动回左上角,我不知道为什么。

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

以下 css 为我修复了它:

html, body

    height: 100%;
    padding-bottom: 1px;

【讨论】:

【参考方案2】:

我自己也遇到了这个问题。我发现这是一个错误,其中某些 CSS 使浏览器跳转到页面顶部,但仅在某些情况下,例如在表单和 iframe 中。对我来说,我发现当按钮处于活动状态时应用 box-shadow 会发生这种情况。为了解决这个问题,我只是通过设置 box-shadow: none; 使效果不会在较小的屏幕上触发。

【讨论】:

对我来说,删除任何影响容器高度的东西,以及 box-shadow 解决了这个问题。【参考方案3】:

以下 CSS 为我修复了它。 (source)

在内部 iframe 上:

html, body

    width: 100%; height: 100%; overflow: auto; -webkit-overflow-scrolling: touch;

【讨论】:

以上是关于iPad滚动到iframe顶部的主要内容,如果未能解决你的问题,请参考以下文章

iframe 内容未在 iOs5 iPad/iPhone 的滚动下呈现

iPad UITableView 滚动弹回顶部

IFRAMEs 和 iPad 上的 Safari,用户如何滚动内容?

为啥 iframe div 不能在 iPad 上滚动?

光标位于 youtube_player_iframe 顶部时鼠标滚动卡住

在 iPad 上模拟滚动事件