Android浏览器bug?div溢出滚动

mer*_*dor 30 html android android-browser

你可以在Android浏览器中使div的溢出内容可滚动吗?

它可以在所有其他现代浏览器中滚动.

在iOS中它是可滚动的 - 但它不显示滚动条 - 但它可以通过拖动滚动.

一个简单的例子:http: //jsfiddle.net/KPuW5/1/embedded/result/

这会很快修好吗?

Hus*_*sky 25

Android 3.0及更高版本支持overflow:scroll<3.0,这是另一个故事.你可能在像iScroll这样的polyfill上取得了一些成功,但这确实需要付出代价.在具有复杂布局的网站上实施很困难,并且每当网站上的内容发生变化时,您都需要调用方法.内存使用也是一个问题:在已经动力不足的设备上,由于这些类型的polyfill,性能可能会滞后.

我建议采用不同的方法:使用Modernizr检测对溢出滚动的支持,在html标记中添加一个类并使用它来重写CSS,以便页面"正常"滚动而不是在框中滚动.

/* For browsers that support overflow scrolling */
#div {
    height: 400px;
    overflow: auto;
}

/* And for browsers that don't */
html.no-overflowscrolling #div {
    height: auto;
}
Run Code Online (Sandbox Code Playgroud)

  • 我认为你推荐的方法是基于误解.Modernizr的`overflowscrolling`测试不是关于`overflow:scroll`是否在浏览器中工作,而是浏览器是否支持`*-overflow-scrolling` css属性,这是不同的. (7认同)

Ala*_*air 8

overflow: scroll; 从Android 3(API 11)开始支持.

对于跨平台(即iOS <= 4.3.2),Cubiq iScroll是一个易于实现的修复程序.


小智 3

您可以尝试touchscoll.js可滚动的 div 元素