移动端开发bug之如何消除ios回弹效果
作者:网络转载 发布时间:[ 2016/10/12 14:39:40 ] 推荐标签:软件测试管理 缺陷管理
场景再现:上次说了ajax重复提交的问题,说一个移动端玄之又玄的bug,页面上下拖动的时候ios回弹效果(我喜欢叫它橡皮筋效果),因为影响用户体验,所以如何阻止这个效果,听我慢慢到来。
一. 从未见过的-webkit-overflow-scrolling属性
在思考如何解决这个橡皮筋bug的时候,我偶然读到mui的css源码,发现其中有这么一段
body{
font-family:'Microsoft YaHei', Helvetica, sans-serif;
/* line-height: 21px; */
color:#000;
background-color:#efefef;
-webkit-overflow-scrolling: touch;/*是它*/
}
又是overflow又是scrolling的,难不成这东西影响滚动效果,查看MDN得到如下答案
-webkit-overflow-scrolling 属性控制元素在移动设备上是否使用滚动回弹效果 —— MDN
取值:
**auto**:使用普通滚动, 当手指从触摸屏上移开,滚动会立即停止。
**touch**:使用具有回弹效果的滚动, 当手指从触摸屏上移开,内容会继续保持一段时间的滚动效果。继续滚动的速度和持续的时间和滚动手势的强烈程度成正比。同时也会创建一个新的堆栈上下文。
栗子:
-webkit-overflow-scrolling:touch;/* 当手指从触摸屏上移开,会保持一段时间的滚动 */
-webkit-overflow-scrolling:auto;/* 当手指从触摸屏上移开,滚动会立即停止 */
浏览器兼容性: 移动版 Safari iOS 5.0+(是你没跑了)
二. 解决方法
大致实现思路是
页面结构
<header>头部固定<header>
<divid="wrapper">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
<footer>底部固定<footer>
样式
html{
font-size:62.5%;
font-family: sans-serif;
-webkit-text-size-adjust:;
height:;
overflow-y:hidden;
}
body{
margin:0;
max-height:;
overflow-y:hidden;
}
#wrapper{
height:;
width:;
overflow-y:scroll;
-webkit-overflow-scrolling:touch;
position:fixed;
}
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11