2

我正在处理一个包含四 (4) 个单独的 DIV 元素的页面,这些元素都相互独立地滚动。在此处使用答案:`-webkit-overflow-scrolling: touch` 在 iOS7 中因最初的屏幕外元素而损坏,我能够使大部分页面正常工作。当侧DIV展开时,仍然有一些页面无法垂直滚动包含主要内容的DIV。

页面结构如下所示:

...
<div id="paneTop">...</div>
<div id="paneLeft" class="expanded">...</div>
<div id="paneCenter">
  <div>
    <div style="overflow: hidden;">
      <div id="mainContent" style="overflow: auto;">...</div>
    </div>
  </div>
</div>
<div id="paneRight" class="expanded">...</div>
...

在#paneCenter 上设置 touchstart 事件侦听器适用于大多数页面,但这些页面没有额外的 div 层。我已经尝试在#mainContent 上设置touchstart 事件侦听器并一直向上设置,但是当#paneLeft 展开时#mainContent 不会滚动,即使它在#paneLeft 折叠时有效,并且无论paneRight 是否展开都有效。

注意:此问题仅在运行 iOS7 的 iPad 上被发现。

4

1 回答 1

1

这是正确的行为。如果您希望它垂直滚动但水平隐藏它,则专门针对它:overflow-x:隐藏(隐藏水平多余部分),并且不要将任何内容设置为overflow-y。这允许对元素进行一些良好的控制。

于 2014-03-06T23:55:03.017 回答