滚动条如何设置样式和滚动条悬浮显示与隐藏

滚动条如何设置样式和滚动条悬浮显示与隐藏本文介绍了如何使用 CSS 设置滚动条的样式 包括滚动条的默认样式 CSS 属性设置以及如何实现滚动条的悬浮隐藏和显示效果

大家好,欢迎来到IT知识分享网。


一、滚动条如何设置样式

1:滚动条的默认样式(如下图)

1:html代码

// html 代码
<div class="app"> <div class="box"> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> </div> </div> 

2:css代码

/* css 代码 */ .app{ 
     width: 300px; height: 500px; background-color: skyblue; overflow: scroll; } .box{ 
     width: 500px; height: 1000px; background-color: pink; } 

3:效果图

在这里插入图片描述

2:CSS设置滚动条的属性(重点)

主要有下面7个属性(真正常用的就是前三个

1、::-webkit-scrollbar 滚动条整体部分,设置宽度
2、::-webkit-scrollbar-thumb 滚动滑块
3、::-webkit-scrollbar-track 滚动条轨道
4、::-webkit-scrollbar-button 滚动条两端的按钮
5、::-webkit-scrollbar-track-piece 内层滚动槽
6、::-webkit-scrollbar-corner 边角
7、::-webkit-resizer 定义右下角拖动块的样式





3:设置滚动条的例子

1:css代码(在第1步的基础上加上这段代码)

/* 滚动条样式 */ .app::-webkit-scrollbar { 
     width: 4px; /* 设置纵轴(y轴)轴滚动条 */ height: 4px; /* 设置横轴(x轴)轴滚动条 */ } /* 滚动条滑块(里面小方块) */ .app::-webkit-scrollbar-thumb { 
     border-radius: 10px; box-shadow: inset 0 0 5px rgba(0,0,0,0.2); background: rgba(0,0,0,0.9); } /* 滚动条轨道 */ .app::-webkit-scrollbar-track { 
     border-radius: 0; box-shadow: inset 0 0 5px rgba(0,0,0,0.2); background: red; } 

2:效果图

在这里插入图片描述

3:使用的注意事项

(1)你要修改的滚动条应该是父元素的,而不是超出滚动的盒子。
(2)滚动条轨道和滑块的颜色建议分别使用rgba(0,0,0, 0.1)和rgba(0,0,0, 0.2) 较为常用。(如下图,上面是为了更好的区别滑块和轨道的颜色才设置的red)
在这里插入图片描述

二、滚动条悬浮隐藏和显示

实战场景:我的电脑是widnow用的chrome浏览器,然后写项目的时候我和后端滚动条会在停止滚动后自动隐藏,然后设计那边mac的chrome的滚动条会一直显示。就有了一个新的需求:默认隐藏滚动条,hover的时候在结果列表区域显示滚动条。话不多说,看下面效果。

0.核心语法

答应我:不要写 类名:hover ::-webkit-scrollbar-thumb类名::-webkit-scrollbar-thumb :hover 类名::-webkit-scrollbar-thumb:hover 这种了样式了, 伪元素和伪类选择器之前不加空格 ,不加空格,不加空格(重要的事说三遍,别写错了不要怀疑你自己)。
例子:.app:hover::-webkit-scrollbar-thumb {/* … */}

/* 正确语法*/ .类名:hover::-webkit-scrollbar-thumb { 
    /* ... */} 

方式1.设置滚动条宽度为0px,hove为4px

(1)css代码(html代码就是最上面的哪个,没有变)

.app{ 
     width: 300px; height: 500px; overflow: scroll; } .box{ 
     width: 500px; height: 1000px; background-color: pink; } /* 滚动条样式 */ .app::-webkit-scrollbar { 
     width: 0px; /* 设置纵轴(y轴)轴滚动条 */ height: 0px; /* 设置横轴(x轴)轴滚动条 */ } /* 滚动条滑块(里面小方块) */ .app::-webkit-scrollbar-thumb { 
     border-radius: 10px; box-shadow: inset 0 0 5px rgba(0,0,0,0.2); background: rgba(0,0,0,0.2); } /* 滚动条轨道 */ .app::-webkit-scrollbar-track { 
     border-radius: 0; box-shadow: inset 0 0 5px rgba(0,0,0,0.2); background: rgba(0,0,0,0.1); } /* hover时显色 */ .app:hover::-webkit-scrollbar { 
     width: 4px; height: 4px; } 

(2)css代码图片说明

在这里插入图片描述

(3)列表hover 的效果图

在这里插入图片描述

方式2.设置滚动条滑块和轨道为透明色,hover为你需要的颜色

(1)css代码(html代码就是最上面的哪个,没有变)

.app{ 
     width: 300px; height: 500px; overflow: scroll; } .box{ 
     width: 500px; height: 1000px; background-color: pink; } /* 滚动条样式 */ .app::-webkit-scrollbar { 
     width: 4px; /* 设置纵轴(y轴)轴滚动条 */ height: 4px; /* 设置横轴(x轴)轴滚动条 */ } /* 滚动条滑块(里面小方块) */ .app::-webkit-scrollbar-thumb { 
     border-radius: 0px; background: transparent; } /* 滚动条轨道 */ .app::-webkit-scrollbar-track { 
     border-radius: 0; background: transparent; } /* hover时显色 */ .app:hover::-webkit-scrollbar-thumb { 
     background: rgba(0,0,0,0.2); } .app:hover::-webkit-scrollbar-track { 
     background: rgba(0,0,0,0.1); } 

(2)css代码图片说明

在这里插入图片描述

(3)列表hover 的效果图

在这里插入图片描述


总结

总结一:滚动条如何设置样式

总结二

伪元素和伪类选择器之前不加空格,类名hover的情况下修改滚动条样式的语法为 类名:hover::-webkit-scrollbar-thumb {/* ... */}

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/111101.html

(0)
上一篇 2026-01-27 09:15
下一篇 2026-01-27 09:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信