摘要:渐近增强刚好最近看到这篇文章,如果结合每次滚动的时候每个条目始终在中间这样效果就更好了。效果如下查看浏览器支持情况遗憾的是目前只有和上的和原生支持需要前缀,好在这种可以当做渐进增强,即使浏览器不支持也不影响功能。
前言
前几天在 segmentfault 上看到有人问下面这个效果(segmentfault app 中的)怎么实现,感觉这个效果体验还不错(在移动端没有滚动条的情况能够提示有更多内容可以滚动),就用 overflow-x: auto + width: 80% 在 codepen 上写了个 demo。
渐近增强刚好最近看到这篇文章 Introducing CSS Scroll Snap Points ,如果结合 Scroll snap points 每次滚动的时候每个条目始终在中间这样效果就更好了。
.snap-slider { overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: mandatory; scroll-snap-destination: 50% 0; &__scroller { display: table; text-align: center; } &__item { scroll-snap-coordinate: 50% 0%; display: table-cell; line-height: 150px; font-size: 2em; &:not(:first-child) { border-left: 1px solid #ccc; } } &__width { width: 80vw; } }
属性的具体介绍,参考本文最后的参考链接。
效果如下:
查看 Demo
浏览器支持情况遗憾的是目前(7/9/2016)只有 Firefox 和 iOS 上的 Safari 和 Chrome 原生支持(需要前缀),好在这种可以当做渐进增强,即使浏览器不支持也不影响功能。
PS:这里有个 polyfill,但是本例中加了似乎不起作用。
参考https://css-tricks.com/introducing-css-scroll-snap-points/
https://webkit.org/blog/4017/scroll-snapping-with-css-snap-points/
http://codepen.io/collection/XjOwrq/
原文地址:https://uedsky.com/2016-07/css-scroll-snap-points/
获取最佳阅读体验并参与讨论,请访问原文
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/111347.html
摘要:过去滚动捕捉只能通过实现,但现在得益于新的滚动捕捉模块,这种效果已经可以通过实现了。同时令人庆幸的是浏览器可以根据用户的滚动方式自动控制并判断是否利用捕捉点捕捉。 特别声明,本文翻译自@alligatorio的Control Page Scroll in CSS Using Scroll Snapping一文,受限于译者能力,译文或存在不足,欢迎大家指出。如需转载,烦请注明出处。 滚...
摘要:过去滚动捕捉只能通过实现,但现在得益于新的滚动捕捉模块,这种效果已经可以通过实现了。同时令人庆幸的是浏览器可以根据用户的滚动方式自动控制并判断是否利用捕捉点捕捉。 特别声明,本文翻译自@alligatorio的Control Page Scroll in CSS Using Scroll Snapping一文,受限于译者能力,译文或存在不足,欢迎大家指出。如需转载,烦请注明出处。 滚...
摘要:最好给浏览器或者毫秒的间隙再去初始化。他们控制滚动周期毫秒级别和动画的擦除效果。重新绘制阶段不是瞬时发生的只是范围结束时触发。注如果你有一个相当复杂的结构,你应该给浏览器更多的执行事件,可以设置到毫秒的超时时间。使用方法注册事件。 入门 Scroll是一个类,每个需要使用滚动功能的区域均要进行初始化。每个页面上的iScroll实例数目在设备的CPU和内存能承受的范围内是没有限制的。 尽...
阅读 2528·2021-07-26 23:38
阅读 3429·2019-08-30 13:10
阅读 2314·2019-08-29 18:33
阅读 2319·2019-08-29 16:12
阅读 986·2019-08-29 10:59
阅读 1796·2019-08-26 17:40
阅读 764·2019-08-26 11:59
阅读 810·2019-08-26 11:41