微信小程序设置滚动条

Posted numen-fan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序设置滚动条相关的知识,希望对你有一定的参考价值。

前言

又很久没有写东西了,上周开始将一个APP和一个网站的内容整合到微信小程序中,到这会儿终于搞得快结束了,才发现为啥我的小程序滚动视图没有滚动条,这是闹哪样,没有滚动条的滚动是没有灵魂的。

客官可移步http://fanjiajia.cn/2019/07/02/wxxcx/flx1/本文若有出入,请指正——来自小渣渣的颤抖

原因

原来在app.wxss中定义了如下的内容【不知道是不是新建项目自动生成的,这里也就提供了隐藏滚动条的思路啦】

::-webkit-scrollbar 
  width: 0px;
  height: 0px;
  color:#transparent;

what, 宽高为0,而且还是透明的,难怪,好吧,修改宽高4px,color设置为green,以为可以了,呵呵,太年轻。
scroll-viwe依然没有滚动条,以为是布局原因,导致滚动条消失在界面外,我将宽高设为20px,想想也是搞笑,设这么宽,但是,正是这种傻劲,再运行,发现右边宽出了好多,然而还是没有滚动条,懂了,肯定还有其他设置,果不其然……

解决

一通捣腾,原来,除了设置::-webkit-scrollbar,还需要设置::-webkit-scrollbar-track,这是设置滚动的轨道,::-webkit-scrollbar-thumb,这是设置滚动条的。
所以完整的设置如下(在app.wxss中,这样所有的scroll-view都有了,如果需要单独设置样式,可在单独page的wxss中设置)

::-webkit-scrollbar 
  width: 4px;
  height: 4px;
  color:#ffffff;


/*定义滚动条轨道 内阴影+圆角*/
::-webkit-scrollbar-track 
  -webkit-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  background-color:#FFFFFF;


/*定义滑块 内阴影+圆角*/
::-webkit-scrollbar-thumb 
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
  background-color:#39b54a;

好了,看看效果
技术图片

最后

生命不息,使劲造

以上是关于微信小程序设置滚动条的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序实现横向滚动文字

微信小程序scroll-view 能自动滚动吗

微信小程序实现左右联动的菜单列表

微信小程序设置滚动条

微信小程序实现无限滚动列表(滚动新闻动态列表)

微信小程序-滚动消息通知