基于CSS3 animation动画属性实现轮播图效果

(编辑:jimmy 日期: 2024/10/31 浏览:2)

animation简介:

CSS3的animation属性可以像Flash制作动画一样,通过控制关键帧来控制动画的每一步,实现更为复杂的动画效果。ainimation实现动画效果主要由两部分组成:

1)通过类似Flash动画中的帧来声明一个动画;

2)在animation属性中调用关键帧声明的动画。

animation属性值:

animation 属性是一个简写属性

语法:animation: name duration timing-function delay iteration-count direction;

animation设置的六个动画属性:

animation-name:规定需要绑定到选择器的 keyframe 名称。取值:

none:(默认)规定无动画效果(可用于覆盖来自级联的动画)。

keyframename:规定需要绑定到选择器的 keyframe 的名称。

animation-duration:规定完成动画所花费的时间,以秒或毫秒计。取值:

time:规定完成动画所花费的时间。默认值是 0,意味着没有动画效果。

animation-timing-function:规定动画的速度曲线。取值:

ease:默认。动画以低速开始,然后加快,在结束前变慢。

linear:动画从头到尾的速度是相同的。

ease-in:动画以低速开始。

ease-out:动画以低速结束。

ease-in-out:动画以低速开始和结束。

cubic-bezier(n,n,n,n):在 cubic-bezier 函数中定义自己的值。可能的值是从 0 到 1 的数值。

animation-delay:规定在动画开始之前的延迟。取值:

time:(可选)定义动画开始前等待的时间,以秒或毫秒计。默认值是 0。

animation-iteration-count: 规定动画应该播放的次数。取值:

n:定义动画播放次数的数值。

infinite:规定动画应该无限次播放。

animation-direction:规定是否应该轮流反向播放动画。取值:

normal:默认值。动画应该正常播放。

alternate:动画应该轮流反向播放。

animation动画实现轮播图

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>图片轮换</title>
    <style type="text/css">
        div,img{
            margin: 0;
            padding: 0;
        }
        .div_first{
            width: 1000px;
            height: 300px;
            margin-top: 100px;
            margin-left: 250px;
            overflow: hidden;
        }
        .div_second{
            width: 4000px;
            position: relative;
            animation: myimg 12s linear infinite normal; 
        }
        @keyframes myimg{
            0{
                left: 0;
            }
            5%{
                left: 0;
            }
            30%{
                left: -1000px;
            }
            35%{
                left: -1000px;
            }
            60%{
                left: -2000px;
            }
            65%{
                left: -2000px;
            }
            95%{
                left: -3000px;
            }
            100%{
                left: -3000px;
            }
        }
    </style>
</head>
<body>
    <div class="div_first">
        <div class="div_second">
            <img src="images/011-1.jpg" alt=""><img src="images/011-2.jpg" alt=""><img src="images/011-3.jpg" alt=""><img src="images/011-1.jpg" alt="">
        </div>
    </div>
</body>
</html>

图片标签要放在同一行,不然图片之间会有空隙。

总结

以上所述是小编给大家介绍的基于CSS3 animation动画属性实现轮播图效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
 

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。