隐藏滚动条但保持页面滚动及页面滚动条样式
在用React+Ant design的时候遇到过组件anchor对layout布局下(header+content),content滚动(overflow:scroll)无法做出反应的BUG,可以尝试给body加滚动条,此时anchor就可以使用了,然后隐藏掉body的滚动条就可以了,也可以用来实现页面无滚动条也可滑动的效果。同时汇总一些常用的滚动条样式:
全局滚动条隐藏
::-webkit-scrollbar{
display: none;
}
隐藏body的滚动条
body::-webkit-scrollbar{
display: none;
}
可以对单独元素或者className的元素生效,例
.content::-webkit-scrollbar{
display: none;
}
或
main::-webkit-scrollbar{
display: none;
}
滚动条的宽高
::-webkit-scrollbar{
width: 3px; /*对垂直流动条有效*/
height: 3px; /*对水平流动条有效*/
}
/*定义滚动条的轨道颜色、内阴影及圆角*/
::-webkit-scrollbar-track{
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
background-color: #6d6d6d;
opacity: 0.4; 滚动条透明度
}
/*定义滑块颜色、内阴影及圆角*/
::-webkit-scrollbar-thumb{
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
background: #6E7794;
opacity: 0.7;
border-radius: 2px; 滑块两端圆角
}
要注意的是CSS部分overflowY:hidden,滚动条隐藏的同时,滚动事件也是消失的。
如有错误或者更好的方式方法还望多指点,谢谢。