动画效果:animation

1.原理: 实现多个状态间的变化过程,动画过程可控(重复播放、最终画面、是否暂停)。

2.语法:

(1)调用动画 animation:动画名 动画执行时间;

(2)@keyframes 动画名字(不要用中文);

(3)开始状态from 如果是原点取值为0,是可以省略的,结束状态to;(0% 相当于from,100% 相当于to);

3.注意:

(1)infinite循环次数和方向alternate一般搭配使用;

(2)infinite循环次数,alterna反向执行无法和结束状态一起使用;

(3)动画可以定义多个,多个动画可以同时使用,记得使用逗号隔开。

(4)动画名称和动画时长必须赋值;

(5)调用动画的取值不分先后顺序;

(6)如果有2个时间值,第一个时间表示动画时长,第二个时间表示延迟时间。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>动画的多个状态</title>
    <style>
        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            border-radius: 50%;
             /* 调用动画属性   动画名称,花费时间,匀速播放(linear),延迟播放(单位是s),循环次数(infinite无限循环) */
            animation: move 5s linear 2s infinite;
        }
        @keyframes move {
            /* 百分比状态越平均,动画效果越匀速 */
            /* 0%相当于from;100%相当于to; */
            0%{
                transform: translate(0,0);
            }
            25%{
                transform: translate(500px,0);
            }
            50%{
                transform: translate(500px,500px);
            }
            75%{
                transform: translate(0,500px);
            }
            100%{
                transform: translate(0,0);
            }
             /* animation: name duration timing-function delay iteration-count direction fill-mode; */

            /* 定格动画的步骤:把要定格的位置设为100%,然后加forwards属性. */

            /* 注意点:
            1.infinite循环次数和方向alternate(反方向执行)属性一起使用;
            animation: move 2s linear 2s infinite;


            2.infinite循环次数和alternate(反方向执行)属性无法和forwards(结束状态)一起使用 
            animation: move 2s forwards;*/

        }
    </style>
</head>
<body>
    <div class="box"></div>
    
</body>
</html>

逐帧动画:

逐帧动画:帧动画。开发中,一般配合精灵图实现动画效果。将动画过程等分成N份。

animation-timing-function: steps(N);

本节内容注意点:

1.transition 和 animation的区别

1.transition: 属性 花费时间 速度曲线 延时时间; transition: width 2s ease 1s;  

2.animation: 动画名称 花费时间 速度曲线 延时时间 重复次数 动画方向 执行完毕的状态;

3.过渡经常配合鼠标经过使用,只能设置起始和结束状态。

4.动画可以自动执行,而且无限循环等。(其中 动画名称和花费时间必须要写),里面可以有很多的形态,比如 0%, 10% .... 100%

2.perspective 和 transform-style 区别

1.perspective 是透视,可以让电脑模拟 3d效果, 实现近大远小的效果。

2.transform-style 立体呈现 可以让 子元素 里面按照设置位移,旋转,缩放,扭曲等。如果不给父元素这个属性,这里面所有的子盒子都是平面的。

3.正常情况下: 爷爷设置perspective、父亲设置transform-style: preserve-3d、孩子们设置位移,旋转,缩放,扭曲等

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值