帧动画:通过一帧一帧的画面按照固定顺序和速度播放。如电影胶片
<img src="https://gitee.com/le-mon/img/raw/master/Essay/transition/1.png">
<img src="https://gitee.com/le-mon/img/raw/master/Essay/transition/2.gif">
在CSS3里使用transition可以实现补间动画(过渡效果),并且当前元素只要有“属性”发生变化时即存在两种状态(我们用A和B代指:也就是从A到B的形态发生变化),
就可以实现平滑的过渡,为了方便演示采用hover切换两种状态,但是并不仅仅局限于hover状态来实现过渡。
transition: 要过渡的属性(transition-property) 花费时间(transition-duration) 运动曲线(transition-timing-function) 何时开始(transition-delay);
transition: property duration timing-function delay;
transition: width 0.5s ease-in 0s , height 0.5s ease-in-out 1.5s;
| 属性 | 描述 |
| -------------------------- | ----------------------- |
| transition | 简写属性,用于在一个属性中设置四个过渡属性。 |
| transition-property | 规定应用过渡的 CSS 属性的名称。 |
| transition-duration | 定义过渡效果花费的时间。默认是 0。 |
| transition-timing-function | 规定过渡效果的时间曲线。默认是 "ease"。 |
| transition-delay | 规定过渡效果何时开始。默认是 0。 |
transition: all 0.6s ease-out 0.1s;
匀速:linear | 逐渐慢下来:ease | 加速:ease-in | 减速:ease-out | 先加速后减速:ease-in-out
如图:
<img src="https://gitee.com/le-mon/img/raw/master/Essay/transition/3.png">
div {
width: 300px;
height: 300px;
background-color: #ddd;
/* transition 语法格式: 过度属性,花费时间,运动曲线,何时开始 */
/* 其中,过度属性必须填上,其他非必选 */
/* transition: width 0.5s ease-in 0s , height 0.5s ease-in-out 1.5s; */
/* 如果想要所有的属性都一起 */
transition: all 0.6s ease-out 0.1s;
}
div:hover {
width: 400px;
height: 400px;
background-color: #0f0;
}
原文:https://www.cnblogs.com/mangom/p/11805233.html