浏览器滚动条设置
webkit主要有下面7个设置属性:
1 2 3 4 5 6 7 8 9 10 11 12 13 | ::-webkit-scrollbar 滚动条整体,可以设置宽度等 ::-webkit-scrollbar-button 滚动条两端的按钮 ::-webkit-scrollbar-track 外层轨道 ::-webkit-scrollbar-track-piece 内层滚动槽 ::-webkit-scrollbar-thumb 滚动的滑块 ::-webkit-scrollbar-corner 边角 ::-webkit-resizer 下角拖动块的样式 |
以及其他详细设置属性:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | :horizontal 水平方向的滚动条 :vertical 垂直 方向的滚动条 :decrement 应用于按钮和内层轨道(track piece)。它用来指示按钮或者内层轨道是否会减小视窗的位置(比如,垂直滚动条的上面,水平滚动条的左边。) :increment decrement 类似,用来指示按钮或内层轨道是否会增大视窗的位置(比如,垂直滚动条的下面和水平滚动条的右边。) :start 伪类也应用于按钮和滑块。它用来定义对象是否放到滑块的前面。 :end 类似于 start 伪类,标识对象是否放到滑块的后面。 :double-button 该伪类以用于按钮和内层轨道。用于判断一个按钮是不是放在滚动条同一端的一对按钮中的一个。对于内层轨道来说,它表示内层轨道是否紧靠一对按钮。 :single-button 类似于 double-button 伪类。对按钮来说,它用于判断一个按钮是否自己独立的在滚动条的一段。对内层轨道来说,它表示内层轨道是否紧靠一个 single-button 。 :no-button 用于内层轨道,表示内层轨道是否要滚动到滚动条的终端,比如,滚动条两端没有按钮的时候。 :corner-present 用于所有滚动条轨道,指示滚动条圆角是否显示。 :window-inactive 用于所有的滚动条轨道,指示应用滚动条的某个页面容器(元素)是否当前被激活。(在webkit最近的版本中,该伪类也可以用于::selection伪元素。webkit团队有计划扩展它并推动成为一个标准的伪类) |
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /* 设置滚动条的样式 */ ::-webkit-scrollbar { width: 12px; } /* 滚动槽 */ ::-webkit-scrollbar-track { -webkit-box-shadow: inset006pxrgba(0, 0, 0, 0.3); border-radius: 10px; } /* 滚动条滑块 */ ::-webkit-scrollbar-thumb { border-radius: 10px; background: rgba(0, 0, 0, 0.1); -webkit-box-shadow: inset006pxrgba(0, 0, 0, 0.5); } ::-webkit-scrollbar-thumb:window-inactive { background: rgba(255, 0, 0, 0.4); } |
IE下面就比较简单那了,自定义的项目比较少,全是颜色:
1 2 3 4 5 6 7 8 9 10 | .scrollbar { scrollbar-arrow-color: red; /*三角箭头的颜色*/ scrollbar-face-color: red; /*立体滚动条的颜色(包括箭头部分的背景色)*/ scrollbar-3dlight-color: red; /*立体滚动条亮边的颜色*/ scrollbar-highlight-color: red; /*滚动条的高亮颜色(左阴影?)*/ scrollbar-shadow-color: red; /*立体滚动条阴影的颜色*/ scrollbar-darkshadow-color: red; /*立体滚动条外阴影的颜色*/ scrollbar-track-color: red; /*立体滚动条背景颜色*/ scrollbar-base-color: red; /*滚动条的基色*/ } |
取消/隐藏滚动条:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | // Firefox浏览器 scrollbar-width: none; /* Firefox */ // IE浏览器 -ms-overflow-style: none; /* IE 10+ */ // Chrome 和 Safari 浏览器 ::-webkit-scrollbar { display: none; /* Chrome Safari */ } // 当要隐藏滚动条的时候,最好将 overflow 显示设置为 auto 或者 scroll ,保证内容是可滚动的 // 如下: .scrollbar::-webkit-scrollbar { display: none; /* Chrome Safari */ } .scrollbar { scrollbar-width: none; /* firefox */ -ms-overflow-style: none; /* IE 10+ */ overflow-x: hidden; overflow-y: auto; } |
demo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | /*修改某个div的滚动条样式*/ div::-webkit-scrollbar{ width:5px; height:5px; /**/ } div::-webkit-scrollbar-track{ background: #fff; border-radius:2px; } div::-webkit-scrollbar-thumb{ background: #444; border-radius:10px; } div::-webkit-scrollbar-thumb:hover{ background: #999; } div::-webkit-scrollbar-corner{ background: #204754; } // 修改浏览器默认的滚动条样式 /* 整个滚动条 */ ::-webkit-scrollbar { width: 3px; height: 3px; } /* 滚动条有滑块的轨道部分 */ ::-webkit-scrollbar-track-piece { background-color: transparent; border-radius: 5px; } /* 滚动条滑块(竖向:vertical 横向:horizontal) */ ::-webkit-scrollbar-thumb { cursor: pointer; background-color: #f2f2f2; border-radius: 5px; } /* 滚动条滑块hover */ ::-webkit-scrollbar-thumb:hover { background-color: #999999; } /* 同时有垂直和水平滚动条时交汇的部分 */ ::-webkit-scrollbar-corner { display: block; /* 修复交汇时出现的白块 */ } |
分类:
*css
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?