CSS3实现列表无限滚动/轮播效果


Posted in HTML / CSS onJune 23, 2021

效果预览

CSS3实现列表无限滚动/轮播效果

思路

将当前列表滚动至最后一项的末尾,然后瞬间切换回第一项

问题点

1.用什么方式实现无限轮播
这个问题就是列表滚动到最后时底部会留白(有多余空间)如何处理?
列表的最后添加列表开头的重复项即可(如图中的10后面出现的1,2,3,4,5既为重复项)。
重复项添加的数目要根据当前列表的高度和列表项的高度一起确定,例如:
列表高度150px,列表项高度30px,则需要在当前列表尾部添加150 / 30 = 5项重复项才可以去除留白。

2.如何让用户无感知的切换回第一项
添加好重复项之后控制好切换时机,当列表滚动到最后一项的末尾(重复项第一项的开头)时,立即进行切换。例如:
列表项共10项,则让列表向上移动到10 * 30px = 300px时立即进行切换即可实现无感知切换

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>列表无限滚动</title>
</head>
<style>
    .container {
        position: relative;
        background-color: #a4ffcc;
        /* 父容器需要有明确的高度 */
        height: 150px;
        width: 200px;
        margin: auto;
        overflow: hidden;
    }

    .container > .scroll-list {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        animation: scroll 6s linear infinite normal;
    }

    .container > .scroll-list > div {
        width: 100%;
        /* 滚动的项目需要有具体的高度 */
        height: 30px;
        background-color: #1ea7ff;
        display: flex;
        justify-content: center;
        align-items: center;
        color: white;
    }

    .container > .scroll-list > div:nth-child(2n) {
        background-color: #18d9f8;
    }

    @keyframes scroll {
        100% {
            /* 需要滚动内容的总高度 */
            top: -300px;
        }
    }
</style>
<body>
    <div class="container">
        <div class="scroll-list">
            <div>1</div>
            <div>2</div>
            <div>3</div>
            <div>4</div>
            <div>5</div>
            <div>6</div>
            <div>7</div>
            <div>8</div>
            <div>9</div>
            <div>10</div>
            <!-- 下面代码是为了让滚动内容能够多展示一屏(去除留白/无限轮播):数量请自行根据高度进行计算 -->
            <div>1</div>
            <div>2</div>
            <div>3</div>
            <div>4</div>
            <div>5</div>
        </div>
    </div>
</body>
</html>

到此这篇关于CSS3实现列表无限滚动/轮播的文章就介绍到这了,更多相关css3列表滚动轮播内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
CSS3中的opacity属性使用教程
Aug 19 HTML / CSS
CSS3之transition实现下划线的示例代码
May 30 HTML / CSS
10分钟理解CSS3 FlexBox弹性布局
Dec 20 HTML / CSS
HTML5 解析规则分析
Aug 14 HTML / CSS
HTML5 canvas基本绘图之绘制线条
Jun 27 HTML / CSS
浅谈html5标签css3的常用样式
Oct 20 HTML / CSS
完美解决IE8下不兼容rgba()的问题
Mar 31 HTML / CSS
使用html2canvas.js实现页面截图并显示或上传的示例代码
Dec 18 HTML / CSS
HTML5去掉输入框type为number时的上下箭头的实现方法
Jan 03 HTML / CSS
AmazeUI 网格的实现示例
Aug 13 HTML / CSS
使用HTML5做的导航条详细步骤
Oct 19 HTML / CSS
如何在CSS中绘制曲线图形及展示动画
May 24 HTML / CSS
HTML5页面音频自动播放的实现方式
Jun 21 #HTML / CSS
html中显示特殊符号(附带特殊字符对应表)
CSS中Single Div 绘图技巧的实现
CSS几步实现赛博朋克2077风格视觉效果
教你做个可爱的css滑动导航条
Html5大屏数据可视化开发的实现
关于html选择框创建占位符的问题
Jun 09 #HTML / CSS
You might like
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
PHP跳转页面的几种实现方法详解
2013/06/08 PHP
基于laravel belongsTo使用详解
2019/10/18 PHP
超级强大的表单验证
2006/06/26 Javascript
理解Javascript_14_函数形式参数与arguments
2010/10/20 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
jQuery实现列表的全选功能
2015/03/18 Javascript
javascript中innerText和innerHTML属性用法实例分析
2015/05/13 Javascript
php结合imgareaselect实现图片裁剪
2015/07/05 Javascript
js中利用tagname和id获取元素的方法
2016/01/03 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
2016/01/05 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
javascript的理解及经典案例分析
2016/05/20 Javascript
AngularJs $parse、$eval和$observe、$watch详解
2016/09/21 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
高性能的javascript之加载顺序与执行原理篇
2018/01/14 Javascript
vue项目实现表单登录页保存账号和密码到cookie功能
2018/08/31 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
[02:56]DOTA2矮人直升机 英雄基础教程
2013/11/26 DOTA
[00:32]2018DOTA2亚洲邀请赛iG出场
2018/04/03 DOTA
利用python写个下载teahour音频的小脚本
2017/05/08 Python
Ubuntu安装Jupyter Notebook教程
2017/10/18 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
在scrapy中使用phantomJS实现异步爬取的方法
2018/12/17 Python
Django组件之cookie与session的使用方法
2019/01/10 Python
python读文件的步骤
2019/10/08 Python
Pycharm 2020年最新激活码(亲测有效)
2020/09/18 Python
关于pytorch中全连接神经网络搭建两种模式详解
2020/01/14 Python
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
巴西最大的巴士票务门户:Quero Passagem
2020/11/21 全球购物
一年级班主任感言
2014/03/08 职场文书
菜篮子工程实施方案
2014/03/08 职场文书
调研汇报材料范文
2014/08/17 职场文书
平遥古城导游词
2015/02/03 职场文书
学校勤俭节约倡议书
2015/04/29 职场文书
全家福照片寄语怎么写?
2019/04/02 职场文书