详解iOS中position:fixed吸底时的滑动出现抖动的解决方案

详解iOS中position:fixed吸底时的滑动出现抖动的解决方案,第1张

概述详解iOS中position:fixed吸底时的滑动出现抖动解决方案 两种抖动 为什么抖动还会有两种? 其实是我碰到过两种抖动的场景,第一个场景是native的抖动,第二个场景是h5的抖动. native的抖动 前端开发人员会在app中打开webview,这个时候iOS中position:fixed吸底时的滑动出现抖动应该是native造成的抖动,整个viewport跟着动,所以可以在生成schema的时候将参数bounce_disable(可能不一定都有这个参数,就看有没有类似的参数进行控制)设置为1禁止native的d性效果,然后加上h5的这个效果,-webk

两种抖动

为什么抖动还会有两种?

其实是我碰到过两种抖动的场景,第一个场景是native的抖动,第二个场景是h5的抖动。

native的抖动

前端开发人员会在app中打开webvIEw,这个时候iOS中position:fixed吸底时的滑动出现抖动应该是native造成的抖动,整个vIEwport跟着动,所以可以在生成schema的时候将参数bounce_disable(可能不一定都有这个参数,就看有没有类似的参数进行控制)设置为1禁止native的d性效果,然后加上h5的这个效果,-webkit-overflow-scrolling 属性可以帮我们实现这个效果,它控制元素在移动设备上是否使用滚动回d效果。

h5的抖动

方案一

//我是吸顶头部.header{ wIDth:100%; height:50px; position:fixed; top:0px;}//我是中间要滑动的部分.main{ wIDth:100%; height:auto; position:absolute; padding-top:50px; padding-bottom:50px; Box-sizing:border-Box; overflow-y:scroll;}//我是吸底尾部.footer{ wIDth:100%; height:50px; position:fixed; bottom:0px;}

解释:滑动部分overflow-y:scroll;所以在上下方向超出一屏的部分会变成滚动模式并且不溢出,然后这边吸顶和吸底设置的高度都是50,所以对应的中间滑动部分分别有padding-top:50px;和padding-bottom:50px;设置Box-sizing:border-Box;所以padding的增加不会增加.main的高度。

方案二

transform: translateZ(0);-webkit-transform: translateZ(0);

解释:在使用position:fixed的元素上加上该属性。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

总结

以上是内存溢出为你收集整理的详解iOS中position:fixed吸底时的滑动出现抖动的解决方案全部内容,希望文章能够帮你解决详解iOS中position:fixed吸底时的滑动出现抖动的解决方案所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1108024.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存