加载中...

解决页面切换出现滚动条而导致的抖动问题


解决页面切换出现滚动条而导致的抖动问题

前言

在页面开发的时候,我们使用路由等方法使页面进行跳转的时候,可能有些页面需要纵向的滚动条,可能有些页面不需要滚动条,由于在浏览器中滚动条也是有默认的样式占据着一点的范围,就会导致切换页面就会有抖动页面的效果,体验十分差

解决问题

通过对body的宽度使用vw来设定,再设置html的样式解决问题

body {
  width: 100vw;
}

html {
  overflow-y: auto;
  overflow-x: hidden;
}

设置好css后切换页面就不会出现抖动了,或者我们也可以采取很绝的方法,直接去修改滚动条的样式

/*定义滚动条高宽及背景
 高宽分别对应横竖滚动条的尺寸*/
::-webkit-scrollbar {
  width: 0px;
  height: 0px;
  background-color: #f5f5f5;
}
/*定义滚动条轨道
  内阴影+圆角*/
::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  background-color: #f5f5f5;
}
/*定义滑块
  内阴影+圆角*/
::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #555;
}

在该代码片段的第四行和第五行修改滚动条的宽度,这样浏览器就不会出现滚动条,页面也不会有抖动了,当然这种方法意味着斩草除根

其他零碎的方法就是给页面的右边加点预留,这点预留给到滚动条


文章作者:
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 !