css修改浏览器滚动条样式(兼容IE,Chrome,Firefox)

IE

写法:写在overflow同级的位置,由于在IE下transparent无效,故将滚动条置为页面背景色,以此规避丑丑的滚动条样式。

这几个属性文档说是兼容IE5.5,亲测IE11可以,低版本未测试。

用以下几个属性组合,就可以将滚动条变得和背景色一样:

scrollbar-arrow-color: color; /*三角箭头的颜色*/
scrollbar-face-color: color; /*立体滚动条的颜色(包括箭头部分的背景色)*/
scrollbar-3dlight-color: color; /*立体滚动条亮边的颜色*/
scrollbar-highlight-color: color; /*滚动条的高亮颜色(左阴影?)*/
scrollbar-shadow-color: color; /*立体滚动条阴影的颜色*/
scrollbar-darkshadow-color: color; /*立体滚动条外阴影的颜色*/
scrollbar-track-color: color; /*立体滚动条背景颜色*/
scrollbar-base-color:color; /*滚动条的基色*/

Chrome

写法:写在overflow同级的样式下面,博主是react + less,写法如下。

/*定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸*/  
&::-webkit-scrollbar  
{   
    width: 16px;  /*滚动条宽度*/
    height: 16px;  /*滚动条高度*/
}  
  
/*定义滚动条轨道 内阴影+圆角*/  
&::-webkit-scrollbar-track  
{   
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);  
    border-radius: 10px;  /*滚动条的背景区域的圆角*/
    background-color: red;/*滚动条的背景颜色*/  
}  
  
/*定义滑块 内阴影+圆角*/  
&::-webkit-scrollbar-thumb  
{   
    border-radius: 10px;  /*滚动条的圆角*/
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);  
    background-color: green;  /*滚动条的背景颜色*/
}

::-webkit-scrollbar 滚动条整体部分
::-webkit-scrollbar-thumb 滚动条里面的小方块,能向上向下移动(或往左往右移动,取决于是垂直滚动条还是水平滚动条)
::-webkit-scrollbar-track 滚动条的轨道(里面装有Thumb)
::-webkit-scrollbar-button 滚动条的轨道的两端按钮,允许通过点击微调小方块的位置。
::-webkit-scrollbar-track-piece 内层轨道,滚动条中间部分(除去)
::-webkit-scrollbar-corner 边角,即两个滚动条的交汇处的小方块
::-webkit-resizer 两个滚动条的交汇处上用于通过拖动调整元素大小的小控件

Firefox

原理:写在overflow同级的位置,如下图:

	  overflow: scroll;
      scrollbar-color: red red; //滚动条轨道颜色 滚动条滑块的颜色
      scrollbar-width: none;
	  scrollbar-width: thin;     //thin模式下滚动条两端的三角按钮会消失
	  scrollbar-width: auto;    //默认大小

    原文作者:MYG_G
    原文地址: https://blog.csdn.net/qq_40657321/article/details/107048384
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞