css3实现幻灯片自动播放

css3代码部分

    <style>
     *{
         padding: 0;
         margin: 0;
     }
     .box{
         display: block;
         width: 300px;
         height: 70px;
         overflow: hidden;
     }
     ul{
         position: relative;
         left: -600px;
        display: block;
         width: 900px;
         height: 70px;
         animation:mylocation 5s infinite linear;
     }
     @keyframes mylocation{
         33%{
          padding-left: 300px;
         }
         44%{
            padding-left: 300px;
         }
         66%{
             padding-left: 600px;
         }
         77%{
            padding-left: 600px;
         }
     }
     li{
         display: block;
         float: left;
         width: 300px;
         height: 70px;
     }
     li img{
         display: block;
         width: 300px;
         height: 70px;
     }
    </style>

html代码部分

    <div class="box">
        <ul>
            <li><img src="mc.png" alt=""></li>
            <li><img src="lb.jpg" alt=""></li>
            <li><img src="zgl.jpg" alt=""></li>

        </ul>
    </div>
    

效果:
在这里插入图片描述
原理:设置一个盒子,把ul放到盒子里
三个容纳图片的 li 在 ul 内水平排列
ul的实际宽度是盒子宽度的三倍
在盒子中使用 overflow: hidden;属性
使ul超出盒子的部分不可见
最后通过 ul 的 padding-left: ;属性改变左填充间距
从而使 li 位置整体向后移
通过动画效果改变li的位置从而达到幻灯片效果
————————————————————————————————

实现连续无限滚动动画

上述效果会在下一次动画开始时有一小段的闪烁,为了解决闪烁需要:
1.假设需要四张图片轮换播放
在这里插入图片描述
需要为ul设置六个图片的宽度,并且在1,2,3,4图片后插入两张1,2
设置一组动画改变margin为四张图片宽度,第一组动画结束后的效果为在这里插入图片描述
此时添加的 1,2在盒子中,且此时动画重新开始,盒子中的图片由1,2变为1,2就可以实现无闪烁轮播动画

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值