【问题标题】:How to snap each element while scrolling如何在滚动时捕捉每个元素
【发布时间】:2022-02-22 20:33:43
【问题描述】:

我正在尝试用 HTML 重新创建 Google 的 Playstore 设计。我已经使我的容器水平滚动,然后添加了scroll-snap-type: x proximity;scroll-snap-align: start; 以使元素在滚动时捕捉。但是,由于滚动速度太大,只有第三个或第四个元素会捕捉。我知道滚动速度不应该被代码篡改,所以我需要一种方法来像 Playstore 那样总是将每个元素对齐到一边。有什么想法吗?

基本上,去 Playstore 并在任何 carousal 上滑动。每个项目一个接一个地出现并卡在一边。我该如何重新创建它?

谢谢!

【问题讨论】:

  • 请注意,您需要为scroll-snap 设置溢出规则。 overflow: auto 无法使用它。

标签: html css scroll e-commerce vuejs3


【解决方案1】:

scroll-snap-stop: always; 似乎可以解决问题。它会在每个可能的scroll-snap 点停止滚动容器。默认值设置为normal,不会停止正文滚动。

MDN 参考 - https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-snap-stop

兼容性 - 除了 Firefox 和 Firefox for Android(由于bug 1312165)之外,它几乎兼容所有主流浏览器

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-02
    • 2020-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多