logo W3C-blog

用于稳定滚动条槽的一点点CSS

5k00 2025/10/18

我将我的操作系统配置为使用可见滚动条,这是macOS系统设置中显著提升的一个功能,高到似乎暗示某种程度的常见使用(尽管它不是默认设置)。

我不一定更喜欢这个功能启用的行为,但我在浏览网页时将其用作隐式的质量衡量标准。

我通常看到以下问题:

  1. 具有水平溢出(以及匹配的滚动条)的页面更明显。
  2. 当网站切换文档级overflow: hidden来切换模态框/对话框时,页面可能会水平移动约20px。
  3. 在特别慢的页面上,你甚至可能在渐进式渲染内容比填充一个"页折"慢时看到页面移动。

人们可以解决这个问题的最简单方法是在CSS重置中添加html { overflow-y: scroll; },这可能是非常容易减少那些内容布局移动问题的好方法!但这个小片段会给每个页面添加滚动条。

要仅在需要时显示滚动条(同时为稍后添加的滚动条保留空间),请使用scrollbar-gutter CSS属性scrollbar-gutterBaseline 2024新可用,所以确保你用@supports守卫来增强它。

html {
	overflow-y: scroll;
}
@supports (scrollbar-gutter: stable) {
	html {
		overflow-y: auto;
		scrollbar-gutter: stable;
	}
}

这看起来很适合你的重置样式表。

相关内容:


2 喜欢

捷~GaiNianKC
4 评论
  1. W3C的头像

    W3C CNB

    2025/01/16
    这个解决方案解决了我的问题,非常感谢!
  2. 杨生富态的头像

    杨生富态 CNB

    2025/04/22
    细节处理得很好,专业!
  3. cjSound的头像

    cjSound CNB

    2025/04/13
    期待更多这样的优质内容!
  4. 严波 - 为霞尚满天的头像

    严波 - 为霞尚满天 CNB

    2025/05/30
    代码质量很高,学习到了。
< 上一篇
网络与通信
下一篇 >
一个减少图像构建时间60%的奇怪技巧