ae图片无缝循环滚动_纯 CSS 实现无缝滚动

前言

在某些场景下,需要在页面中循环滚动地展示一些信息,如商品信息、营销活动图片、系统消息通知等。在以往的开发中,我们一般都会使用 Swipper 或类似的组件来实现,其功能也是十分强大;不过我们今天讨论的仅仅是用一种更轻量的、更简便的甚至无需 JS 的方式来实现一个简单的无缝滚动而已。

何为无缝滚动?

拆开来说,应从右向左理解。在网页中,滚动是指元素在某个方向的位移过程;无缝,指的是元素上一次滚动结束和下一次滚动开始之间是平滑自然、紧密相连的,如同圆环一样首尾相接、不分起点与终点。

以横向滚动的图片为例,其无缝滚动示意图如下所示:

33fa293686d06dc53fbd1ddbb5199661.gif
无缝滚动示意图
Step By Step,先实现滚动

实现元素滚动的方法可以使用 JS,如通过setInterval来改变元素的left值。也可以使用 CSS Animation 来实现。另外在 CSS 动画中,我们应尽可能的避免操作元素的widthheightpaddingmargin等会引起浏览器重排的属性。对于某些动画,我们可适当的使用 CSS Transform 模块的属性,开启 GPU 加速,提升动画流畅度。

animation

animation属性说明如下所示:

<
属性值 说明 可选值 初始值
animation-name 指定动画的名称 --- none
animation-duration 指定动画周期的时长 0s
animation-timing-function 定义动画的运行效果 ease
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值