animation-timing-function 是一个用于定义动画过渡效果的 CSS 属性。它控制动画的时间进展方式,即动画在时间轴上的速度变化。

该属性接受一些预定义的值,其中一些常见的包括:

1. ease:默认值,表示动画开始和结束时速度较慢,中间时速度较快,形成一种平滑的过渡效果。
2. linear:表示动画在整个过程中以恒定速度运行,没有加速或减速。
3. ease-in:表示动画开始时速度较慢,然后逐渐加速。
4. ease-out:表示动画开始时速度较快,然后逐渐减速。
5. ease-in-out:表示动画开始和结束时速度较慢,中间时速度较快,然后再逐渐减速。

除了这些预定义的值外,你还可以使用 cubic-bezier 函数自定义时间函数,以更精确地控制动画的速度变化。

例如,使用 animation-timing-function 属性可以像这样定义一个动画:
div {
  width: 100px;
  height: 100px;
  background-color: blue;
  animation: myAnimation 3s ease-in-out infinite;
}

@keyframes myAnimation {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
  100% {
    transform: scale(1);
  }
}

在这个例子中,动画 myAnimation 在3秒内运行,使用 ease-in-out 时间函数,实现了一个在动画开始和结束时有缓慢速度变化的效果。


转载请注明出处:http://www.zyzy.cn/article/detail/4105/CSS