兩種抖動
為什么抖動還會有兩種?
其實是我碰到過兩種抖動的場景,第一個場景是native的抖動,第二個場景是h5的抖動。
native的抖動
前端開發(fā)人員會在app中打開webview,這個時候iOS中position:fixed吸底時的滑動出現(xiàn)抖動應(yīng)該是native造成的抖動,整個viewport跟著動,所以可以在生成schema的時候?qū)?shù)bounce_disable(可能不一定都有這個參數(shù),就看有沒有類似的參數(shù)進行控制)設(shè)置為1禁止native的彈性效果,然后加上h5的這個效果,-webkit-overflow-scrolling 屬性可以幫我們實現(xiàn)這個效果,它控制元素在移動設(shè)備上是否使用滾動回彈效果。
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;所以在上下方向超出一屏的部分會變成滾動模式并且不溢出,然后這邊吸頂和吸底設(shè)置的高度都是50,所以對應(yīng)的中間滑動部分分別有padding-top:50px;和padding-bottom:50px;設(shè)置box-sizing:border-box;所以padding的增加不會增加.main的高度。
方案二
transform: translateZ(0);-webkit-transform: translateZ(0);
解釋:在使用position:fixed的元素上加上該屬性。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點
疑難解答
圖片精選