问题:
我们在页面高度超过一屏的时候,把页面滚动到最下面然后点击回退,在进到这个页面就会出现遮挡白屏,刷新或者滑动可以恢复
原因:
在ios机器上使用webview开发Vue项目时候,go history(-1), 无法将body的高度拉掉,使得遮住,刷新或者滑动可以恢复
解决方案实现原理:
html,body都是100%,#app撑起了父元素的告诉,但是浏览器默认的滚动scroll并不是#app,而是body,某些因素,造成返回history 后,无法复原,为此,我们将#app 进行了绝对定位,并让它重新成为 scroll 的对象,从而解决问题
代码:
```
html, body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
position: relative;
}
#app {
width: 100%;
height: 100%;
background: #fff;
overflow: scroll;
-webkit-overflow-scrolling: touch;
position: absolute;
left:0;
top:0;
}
```
网友评论