这是我参与更文挑战的第27天,活动详情查看: 更文挑战 !
👽 概论
上次和大家介绍了DOM中scroll的一些相关知识点,今天再来和大家聊下scroll的远戚--CSS中scrollbar的一些相关知识点。 scrollbar大家肯定都不陌生,但如果是想要调整它的样式,估计大多数人都会觉得头疼。因为基本上所有与scrollbar相关的属性目前都尚无统一的标准,大家在实际生产环境中还是要慎用。
👽 webkit内核的实现
::-webkit-scrollbar
一看这前缀大家应该就懂了:这是Chrome之流浏览器的实现。::-webkit-scrollbar其实是CSS中的一个伪元素,它选中的一整个滚动条。诸如display、width、height、border、background等等属性基本都支持。
其中最常用的当属display:none,设置该属性值我们可以在保留滚动特性的同时,还可以隐藏滚动条。
类似的伪元素还有如下一些:
::-webkit-scrollbar-button:滚动条按钮
::-webkit-scrollbar-track:滚动条轨道
::-webkit-scrollbar-track-piece:除开滑块的滚动条轨道
::-webkit-scrollbar-thumb:滚动条滑块
::-webk
it-scrollbar-corner:同时有水平垂直两条滚动条时的交叉部分
最后可能有朋友要问,如果一个div中同时有纵向、横向两条滚动条时该怎么选中呢?对于这种问题必须再结合相应的伪类才可以。
::-webkit-scrollbar:horizontal 选中水平滚动条 ::-webkit-scrollbar:vertical 选中垂直滚动条
👽 Firefox中的实现
相比于以上,firefox中的实现就简单多了,当然也更显单薄,这里也就不重点介绍了。这部分的实现全部都是css属性。
scrollbar-width:滚动条宽度
scrollbar-color:滚动条颜色。
👽 结语
愿天下没有兼容问题,respect。