动画效果:animation

173 阅读2分钟

动画效果:animation

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

语法:

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

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

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

注意:

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

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

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

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

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

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

image.png

逐帧动画:

逐帧动画:帧动画。开发中,一般配合精灵图实现动画效果。将动画过程等分成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、孩子们设置位移,旋转,缩放,扭曲等