欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

css3:animation属性

程序员文章站 2024-03-24 22:09:34
...

1 基本使用

制作动画分为两步:

  1. 定义动画 @keyframes
  2. 使用(调用)

2 @keyframes(关键帧) 定义动画

@keyframes animation{
	0%{
	...
	}
	100%{
	...
	}
}
  • 0%是动画的开始,100%是动画的完成。这样的规则就是动画序列
  • 在 @keyframes 中规定某项CSS样式,就能创建由当前样式逐渐改为新样式的动画效果
  • 动画是使元素从一种样式逐渐变化为另一种样式的效果。您可以改变任意多的样式任意多的次数。
  • 请用百分比来规定变化发生的时间,或用关键词"from"和"to",等同于0%和100%

3 简写属性

 /* name:动画名字  
    duration:持续时间 
    timing-function:速度曲线 
    delay:延迟  
    iteration-count:重复次数 
    direction:是否逆向播放 
    fill-mode:结束后状态
*/

    animation: name duration timing-function delay iteration-count direction fill-mode;

  1.direction

        aniamtion-direction: norma | reverse | alternate | alternate-reverse

  • normal 默认的
  • reverse 从终点运动向起点 终点=>起点
  • alternate 到达终点后是否原路返回( 起点=>终点=>起点 ) 当 animation-iteration-count < 2 时无效
  • alternate-reverse 终点=>起点=>终点 animation-iteration-count < 2 时无效

  2.fill-mode

        aniamtion-fill-mode:forwards | backwards

  • forwards 保持当前位置
  • backwards 回到初始位置

  3.timing-function

css3:animation属性

 steps 理解为动画从头到尾,需要多少步来完成。

  4.iteration-count

  • 不填默认一次
  •  infinite  无限次

4 初步使用

div{
            width:120px;
            height:120px;
            line-height:120px;
            margin: 20px;
            background-color: #5cb85c;
            float: left;
            font-size: 12px;
            text-align: center;
            color:orangered;
            animation: move 5s linear infinite ;
        }
        @keyframes move {
            0% {
                transform: rotate(0deg);
            }
            25% {
                transform: rotate(90deg);
            }
            50% {
                transform: rotate(180deg);
            }
            75% {
                transform: rotate(270deg);
            }
            100% {
                transform: rotate(360deg);
            }
        }

相关标签: css css3