webkit内核-滚动条样式修改,火狐-flex布局下overflow不生效解决,滚动条样式隐藏
针对webkit内核的浏览器(谷歌、ie、Safari等):
实现效果:
(利用border实现边距)
使用伪类改变滚动条样式
1. ::-webkit-scrollbar 滚动条整体
2. ::-webkit-scrollbar-thumb 滚动条的方块
3. ::-webkit-scrollbar-track 滚动条的轨道
4. ::-webkit-scrollbar-button 滚动条的两端按钮
5. ::-webkit-scrollbar-track-piece 内层轨道,滚动条中间部分
6. ::-webkit-scrollbar-corner 边角,即垂直滚动条和水平滚动条相交的地方
/*修改滚动条样式*/
div::-webkit-scrollbar {
width: 15px;
height: 15px;
}
div::-webkit-scrollbar-track {
background: #f1f1f1;
}
div::-webkit-scrollbar-thumb {
background: #ddd;
border-radius: 7px;
height: 50px;
border: 4px solid #f1f1f1;
}
div::-webkit-scrollbar-track-piece {
width: 10px;
}
div::-webkit-scrollbar-thumb:hover {
background: #dddddd;
}
div::-webkit-scrollbar-corner {
background: #dddddd;
}
对于火狐浏览器
首先踩了一个坑:flex布局下面overflow不生效,网上找了资料看,发现也不能解决,所以最后直接改变实现的思路
既然flex和overflow不能写一起,那我就把这个拆开来写
本来的样式:
.xxx {
flex-direction: column-reverse;
display: flex;
overflow-y: auto;
height: vw(480);
width: vw(192);
}
修改成:
.xxx {
overflow-y: auto;
height: vw(480);
width: vw(192);
.xxxxxxx {
overflow-y: hidden;
flex-direction: column-reverse;
display: flex;
min-height: vw(480);
}
接下来解决火狐滚动条样式问题:
// 火狐滚动条直接隐藏 火狐滚动条不能修改样式
overflow-y: scroll;
scrollbar-color: transparent transparent;
scrollbar-track-color: transparent;
-ms-scrollbar-track-color: transparent;