02-空间转换+动画

 

空间转换

  • 目标:使用位移、缩放、旋转等空间转换效果丰富网页呈现方式

     

空间位移

  • 语法

    • 完整写法

      • translate3d(x, y, z)

    • 某个坐标轴位移

      • transform: translateX(值);

      • transform: translateY(值);

      • transform: translateZ(值);

  • 取值(正负均可)

    • 像素单位数值

    • 百分比

 

透视

  • 作用

    • 产生近大远小,近实远虚的视觉效果

  • 概念

    • 视距:用户眼睛和屏幕的距离

  • 写法

    • perspective: 值;

    • 添加给父级

    • 取值一般800-1200px之间

       

空间旋转

  • 语法

    • transform: rotateZ(值);

    • transform: rotateX(值);

    • transform: rotateY(值);

  • 左手法则

    • 左手握住旋转轴,大拇指指向坐标轴正值方向, 四根手指弯曲方向为旋转正值方向

  • 拓展

    • rotate3d(x, y, z, 角度度数) :用来设置自定义旋转轴的位置及旋转的角度

    • x,y,z 取值为0-1之间的数字

 

立体呈现

  • 作用

    • 让子级处于真正的3D空间内

  • 写法

    • transform-style: preserve-3d;

    • 添加给父级

 

缩放

  • 完整写法

    • scale3d(x, y, z)

  • 某个坐标轴缩放

    • scaleX()

    • scaleY()

    • scaleZ()

       

动画

动画介绍

基本使用

  • 定义动画

    • @keyframes{ from {} to {} }

    • @keyframes{ 0% {} 20% {} 50% {} 100% {} }

  • 使用动画

    • animation: 动画名称 动画时长;

       

animation属性

  • 复合属性

    • 写法

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

    • 注意事项

      • 取值不分先后顺序

      • 必须赋值项:动画名称和动画时长

      • 若出现2个时间:第一个时间为动画时长, 第二个时间为延迟时间

  • 拆分写法(了解)

    • animation-name:动画名称

    • animation-duration:动画时长

    • animation-delay:延迟时间

    • animation-fill-mode:动画执行完毕时状态

      • forwards:最后一帧状态

      • backwards:第一帧状态(默认值)

    • animation-timing-function:速度曲线

      • steps(数字) : 逐帧动画

    • animation-iteration-count:重复次数

      • infinite:无限循环

    • animation-direction:动画方向

      • alternate:反向

    • animation-play-state:动画播放状态

      • paused:暂停

      • 通常配合:hover使用

 

逐帧动画

  • 作用

    • 精灵动画

    • 搭配精灵图使用

  • 核心

    • 动画速度曲线为steps(N)

    • N与精灵图小图个数相同

 

多组动画

  • 作用:一个元素添加多个动画效果

  • 写法

    • animation: 动画1,动画2,动画N;

    •  

上一篇:Lua和C#交互开销探究


下一篇:HTML基础