webkit下面的CSS设置滚动条

本文介绍 WebKit 浏览器下如何使用 CSS 定制滚动条样式,包括滚动条各部分的属性设置及具体用法。涵盖水平与垂直滚动条、按钮、滑块等元素的详细设置。

webkit下面的CSS设置滚动条

 

1.主要有下面7个属性:

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

 

 注:

1、-moz代表firefox浏览器私有属性

2、-ms代表ie浏览器私有属性

3、-webkit代表safari、chrome私有属性

 

2.如图:

3.上面是滚动条的主要几个设置属性,还有更详尽的CSS属性:

1):horizontal 水平方向的滚动条

2):vertical 垂直 方向的滚动条

3):decrement 应用于按钮和内层轨道(track piece)。它用来指示按钮或者内层轨道是否会减小视窗的位置(比如,垂直滚动条的上面,水平滚动条的左边。)

4):increment decrement类似,用来指示按钮或内层轨道是否会增大视窗的位置(比如,垂直滚动条的下面和水平滚动条的右边。)

5):start 伪类也应用于按钮和滑块。它用来定义对象是否放到滑块的前面。

6):end 类似于start伪类,标识对象是否放到滑块的后面。

7):double-button  该伪类以用于按钮和内层轨道。用于判断一个按钮是不是放在滚动条同一端的一对按钮中的一个。对于内层轨道来说,它表示内层轨道是否紧靠一对按钮。

8):single-button 类似于double-button伪类。对按钮来说,它用于判断一个按钮是否自己独立的在滚动条的一段。对内层轨道来说,它表示内层轨道是否紧靠一个single-button。

9):no-button 用于内层轨道,表示内层轨道是否要滚动到滚动条的终端,比如,滚动条两端没有按钮的时候。

10):corner-present  用于所有滚动条轨道,指示滚动条圆角是否显示。

11):window-inactive 用于所有的滚动条轨道,指示应用滚动条的某个页面容器(元素)是否当前被激活。(在webkit最近的版本中,该伪类也可以用于::selection伪元素。webkit团队有计划扩展它并推动成为一个标准的伪类)

 

4.用法:

 

转载于:https://www.cnblogs.com/Michelle20180227/p/9322659.html

### 使用 CSS 自定义滚动条外观 在 Web 开发中,滚动条作为用户与页面交互的重要部分,默认样式可能无法满足特定设计需求。通过 CSS 可以轻松自定义滚动条的外观,从而增强用户体验并使其更符合整体设计风格。 #### 支持的浏览器前缀 不同浏览器对滚动条样式的支持存在差异,主要依赖于 `-webkit` 前缀。以下是常见的 CSS 属性及其功能: 1. **基础选择器** - `::-webkit-scrollbar`: 定义整个滚动条的宽度和高度。 ```css ::-webkit-scrollbar { width: 10px; /* 设置垂直滚动条的宽度 */ height: 10px; /* 设置水平滚动条的高度 */ } ``` 2. **轨道 (Track) 样式** - `::-webkit-scrollbar-track`: 定义滚动条轨道的颜色和背景。 ```css ::-webkit-scrollbar-track { background-color: #f1f1f1; /* 轨道颜色 */ border-radius: 5px; /* 圆角效果 */ } ``` 3. **滑块 (Thumb) 样式** - `::-webkit-scrollbar-thumb`: 定义滚动条滑块的颜色和其他属性。 ```css ::-webkit-scrollbar-thumb { background-color: #888; /* 滑块颜色 */ border-radius: 5px; /* 圆角效果 */ border: 2px solid transparent; /* 添加透明边框以优化视觉效果 */ background-clip: content-box; /* 防止圆角溢出 */ } /* 当鼠标悬停时改变滑块颜色 */ ::-webkit-scrollbar-thumb:hover { background-color: #555; } ``` 4. **按钮区域 (Button Area)**(可选) - `::-webkit-scrollbar-button`: 定义滚动条两端箭头按钮的样式。 ```css ::-webkit-scrollbar-button { background-color: #ddd; /* 按钮背景色 */ } ``` 5. **角落填充区 (Corner Fill)**(可选) - `::-webkit-scrollbar-corner`: 定义两个滚动条相交处的空白区域样式。 ```css ::-webkit-scrollbar-corner { background-color: #fff; /* 角落背景色 */ } ``` 以上代码片段展示了如何利用伪元素调整滚动条的不同部分[^1]。 #### 实际应用案例 假设我们需要创建一个带有深灰色滑块、浅灰色轨道以及圆角处理的滚动条,完整的 CSS 如下所示: ```css /* 整体滚动条宽度 */ ::-webkit-scrollbar { width: 12px; } /* 轨道样式 */ ::-webkit-scrollbar-track { background: #eaeaea; border-radius: 6px; } /* 滑块样式 */ ::-webkit-scrollbar-thumb { background: #777; border-radius: 6px; border: 2px solid #eaeaea; background-clip: padding-box; } /* 悬停状态下的滑块样式 */ ::-webkit-scrollbar-thumb:hover { background: #555; } ``` 需要注意的是,上述方法仅适用于基于 WebKit 的浏览器(如 Chrome 和 Safari)。对于 Firefox 浏览器,则需使用标准 CSS 属性 `scrollbar-width` 和 `scrollbar-color` 来实现类似的自定义效果[^2]。 #### 兼容性注意事项 尽管现代浏览器普遍支持滚动条的自定义,但在实际项目中仍需考虑兼容性和性能问题。例如,在某些旧版浏览器中,CSS 方法可能不生效;此时可以选择引入第三方库或 jQuery 插件作为替代方案[^3]。 最后提醒一点,为确保美观度,务必为 `track` 和 `thumb` 添加合适的 `border-radius`,因为它们不会自动继承父级组件的圆角设置[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值