前言
又很久没有写东西了,上周开始将一个APP和一个网站的内容整合到微信小程序中,到这会儿终于搞得快结束了,才发现为啥我的小程序滚动视图没有滚动条,这是闹哪样,没有滚动条的滚动是没有灵魂的。
本文若有出入,请指正——来自小渣渣的颤抖
原因
原来在app.wxss中定义了如下的内容【不知道是不是新建项目自动生成的,这里也就提供了隐藏滚动条
的思路啦】1
2
3
4
5::-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中设置)1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21::-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;
}
好了,看看效果
最后
生命不息,使劲造