
使用 css 实现列表自动滚动效果
在 vue 应用程序中,有时需要实现列表自动滚动效果。以下介绍如何使用 css3 实现这样的效果:
将数据扩充为双倍渲染,然后用 css3 向上滚动 50%。
实现步骤:
这是易秀购主题网转载的一款原创来至web主题公园的一款wordpress cms主题,非常适合做图片展示,或婚纱摄影类wordpress主题,采用了大气的网格化无缝设计,使列表以格子铺的方式排列,鼠标悬停的可以出现文章的简介。网站上方可以书写自己的广告语,图片也是可以替换掉的,图片会随着鼠标的移动而轻移,并且在鼠标滚动的时候,下面的模块会直接遮盖这个区域,这款wordpress cms主题视觉效果
立即学习“前端免费学习笔记(深入)”;
- 将原始数据数组复制一份,扩充为双倍长度。
- 给列表添加 transition: transform [duration] [easing]; 属性,指定滚动的持续时间和缓动函数。
- 给列表添加 transform: translate3d(0, -(50%), 0); 属性,将列表向上滚动 50%。
- 使用 javascript 或 css 动画触发滚动的动画。
参考实现:
/* 将数据扩充为双倍渲染 */
ul {
width: 100%;
height: 100%;
overflow: hidden;
}
/* 向上滚动 50% */
ul.scrolling {
transform: translate3d(0, -50%, 0);
}
/* 设置滚动动画 */
@keyframes scroll {
0% {
transform: translate3d(0, 0, 0);
}
100% {
transform: translate3d(0, -50%, 0);
}
}
/* 实际触发滚动动画 */
ul.scrolling {
animation: scroll 1s linear infinite;
}提示:
- 滚动效果的时间和缓动函数可以根据需要进行调整。
- 请在浏览器中查看此效果,以更好地理解其工作原理。









