如何让动画流畅?

Alt*_*827 5 css keyframe css-transitions css-animations

我正在尝试创建一个预加载器,它可以改变它的高度、宽度、边界半径和背景颜色。小提琴:https : //jsfiddle.net/Altair827/ww077qby/4/

@keyframes colorIt{
  from{
background-color: violet;
  }
  to 20%,40%,60%,80%,90%,99%{

  }
  20%{
     background-color: indigo;
     height:40px;
     width:40px;
     border-radius:20px;
  }
  40%{
     background-color: blue;
     height:50px;
     width:50px;
     border-radius:25px;
  }
  60%{
     background-color: green;
     height:60px;
     width:60px;
     border-radius:30px;
 }
 80%{
    background-color: yellow;
    height:70px;
    width:70px;
    border-radius:35px;
 }
 90%{
    background-color: orange;
    height:80px;
    width:80px;
     border-radius:40px;
  }
  99%{
    background-color: red;
    height:20px;
    width:20px;
    border-radius:10px;
  }
}
Run Code Online (Sandbox Code Playgroud)

动画有效,但在更改之间有一个暂停。如何让动画更流畅?

Fra*_*sco 9

你应该改变你的计时功能:

animation-timing-function: linear;
Run Code Online (Sandbox Code Playgroud)

你也可以使用shortland:

/* @keyframes duration | timing-function | delay | name */
animation: 3s linear .1s colorIt;
Run Code Online (Sandbox Code Playgroud)