移动web第二天:空间转换, 动画

空间转换

transform属性实现元素在空间内的位移、旋转、缩放等效果

由x y z三条坐标轴构成一个立体空间,x轴方向为网页从左向右, y轴方向为网页顶部到底部, z轴方向为屏幕向人脸方向.

translate实现元素空间位移效果

语法:
transform: translate3d(x, y, z);
transform: translateX(值);
transform: translateY(值);
transform: translateZ(值);

取值单位:

  1. 像素单位数值
  2. 百分比

perspective属性实现透视效果

可以使元素有空间变化后的效果, 例如近大远小.

perspective的设置要求:设置给使用了3d元素的最近一级的父元素.

语法:
perspective: 值.

perspective的取值范围: 400~1200px

rotate实现元素空间旋转效果

语法:
transform: rotateZ(值);
transform: rotateX(值);
transform: rotateY(值);

动画

animation添加动画效果

实现步骤:

  1. 定义动画


    动画创建举例.png
  2. 动画调用
    animation: 动画名称 动画执行时间时间;

使用动画注意点:
1.动画的名称不能重复.
2.可参与过渡的css属性都可以参与动画.
3.动画的名称不能为 running 它是关键词.
4.如果调用该动画的盒子样式和初始状态的样式是一样的,初始状态可以省略不写.

animation相关属性控制动画执行过程

animation: 动画名称 动画时长 速度曲线 延迟时间 重复次数 动画方向 执行完毕时状态;

  1. 延迟时间:动画开始执行之前要等待的时间 s/ms
  2. 动画播放次数:infinite 无限次播放
  3. 动画播放方向:alternate 交替播放
  4. 速度曲线:默认 ease; 1. linear 匀速播放 2. steps(次数)一般配合精灵图使用
  5. 执行完毕时的状态:forwards 动画会停在动画结束时的状态;

注意:

  1. 动画名称和播放一次动画的时长必须写,其他属性需要就写
  2. forwards不能和infinite结合使用,否则不生效
  3. animation 里面属性值 不分先后顺序
  4. 当属性值里有两个时间,第一个时间永远表示动画时长,第二个表示等待时间/延迟时间

补间动画:

动画执行过程中,没有间隔,非常的平滑
使用的速度曲线:默认值为ease; linear匀速的

逐帧动画:

一步一步去执行的动画,中间会有间隔
使用的速度曲线:steps(正整数)
逐帧动画又叫精灵动画,逐帧动画常常配合精灵图去使用

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容