shuangmianxiaoQ / study-note

日常学习或工作笔记
6 stars 1 forks source link

CSS 动画 #35

Open shuangmianxiaoQ opened 5 years ago

shuangmianxiaoQ commented 5 years ago

transition 补间动画

/* property name | duration | timing function | delay */
transition: width 3s ease-in-out 1s;

trasnsition 支持的属性:Transition 所支持的css属性

生成transition-timing-function函数的工具:Ceaser - CSS Easing Animation Tool

keyframe 关键帧动画

/* @keyframes duration | timing-function | delay | name */
animation: 3s linear 1s slidein;

@keyframes slidein {
  from {
    transform: scaleX(0);
  }
  to  {
    transform: scaleX(1);
  }
}

其他属性(详情查看MDNanimation - CSS | MDN):

逐帧动画

面试真题

  1. CSS动画的实现方式有几种

    • transition
    • keyframes(animation)
  2. 过渡动画和关键帧动画的区别

    • 过渡动画需要有状态的变化,关键帧动画不需要状态的变化
    • 关键帧动画能控制的更精细
  3. 如何实现逐帧动画

    • 使用关键帧动画
    • 去掉补间(steps
  4. CSS动画的性能

    • 性能不坏
    • 部分情况优于JS
    • JS可以做的更好
    • 部分高危属性,哪种方式都不好(box-shadow等)