html 滚动条滚动过快会留下边框线

滚动条滚动过快时,会留下边框线

但其实大部分时候是这样的,没有多出边框线的

滚动条滚动过快时留下边框线的问题通常与滚动条样式和滚动行为有关。这种问题可能出现在使用了自定义滚动条样式的情况下。

注意:使用方法 6 好使,其它只是做记录

1. 使用CSS的::-webkit-scrollbar伪元素

如果你使用的是WebKit浏览器(如Chrome, Safari等),可以通过CSS的::-webkit-scrollbar伪元素来定义滚动条的样式。确保在定义滚动条样式时包括了足够的宽度或高度,这样滚动时就不会因为样式缺失而留下边框线。

复制代码
::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

验证了 width 设置更大值管用,但我的 width 不能改,这个放弃

2. 确保滚动容器有适当的overflow属性

复制代码
.scroll-container {
    overflow-y: auto; /* 仅在必要时显示垂直滚动条 */
    overflow-x: hidden; /* 隐藏水平滚动条 */
    max-height: 200px; /* 设置最大高度以触发滚动 */
}

验证不管用。

3. 使用JavaScript动态调整滚动条宽度

没有必要增加负担

5. 使用CSS的scroll-behavior属性

如果你希望改善用户的滚动体验,可以使用scroll-behavior属性使滚动更加平滑:

复制代码
.scroll-container {
    scroll-behavior: smooth;
}

验证不管用。

6. 使用CSS的 transform 属性

对于动画和滚动效果,可以使用transform和opacity等属性,这些属性可以触发GPU加速。

复制代码
.element {
  transform: translateZ(0);
}

验证好用。但是有一个问题就是 父元素使用transform会使子元素和伪元素的z-index失效

所以子元素里用 dialog 会出问题。

解决办法:可以将 dialog 单独拿出来别放在 transform 的子元素里。

相关推荐
king王一帅5 小时前
做了三年 ProseMirror 后,我用四个月自研排版引擎实现 WPS / Google Docs 替代品,整套框架 MIT 开源
前端·vue.js·开源
এ慕ོ冬℘゜7 小时前
如何在 HTML 中嵌入音频和视频?
前端·html·音视频
变与不变80616 小时前
jQuery怎么使用
前端·javascript
神膘护体小月半16 小时前
flex 布局的 order 属性
前端·css
paopaokaka_luck16 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
仰望.16 小时前
vue 表格组件 vxe-table 树表格懒加载支持拖拽排序的详细用法
前端·javascript·vue.js·vxe-table
前端 贾公子16 小时前
vite-plugin-uni-manifest 升级指南
前端
小码哥_常16 小时前
iPhone 用户传了张 HEIC,我的前端崩了
前端
小码哥_常16 小时前
你发的原图可能暴露你家地址——聊聊图片 EXIF 隐私
前端
java1234_小锋16 小时前
【技术专题】CSS3 网页技术 - CSS3 优先级
前端·css·css3