动画效果:animation
原理: 实现多个状态间的变化过程,动画过程可控(重复播放、最终画面、是否暂停)。
语法:
1.调用动画 animation:动画名 动画执行时间;
2.@keyframes 动画名字(不要用中文);
3.开始状态from 如果是原点取值为0,是可以省略的,结束状态to;(0% 相当于from,100% 相当于to);
注意:
1:infinite循环次数和方向alternate一般搭配使用;
2.infinite循环次数,alterna反向执行无法和结束状态一起使用;
3.动画可以定义多个,多个动画可以同时使用,记得使用逗号隔开。
4.动画名称和动画时长必须赋值;
5.调用动画的取值不分先后顺序;
6.如果有2个时间值,第一个时间表示动画时长,第二个时间表示延迟时间。
逐帧动画:
逐帧动画:帧动画。开发中,一般配合精灵图实现动画效果。将动画过程等分成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、孩子们设置位移,旋转,缩放,扭曲等。