在 CSS 动画中如何实现对象跳跃到指定位置?

在 css 动画中如何实现对象跳跃到指定位置?

css 动画中实现突变:如何定位到特定的位置

css 动画中实现对象的突变效果是需要考虑的问题。当我们需要对象从 69% 的位置突然移动到 0% 时,直接使用 keyframes 动画会造成从 100px 瞬移回 0px 的效果。

要解决这个问题,我们可以使用负数的 animation-delay 属性来实现提前开始动画的效果。例如,给 html 元素设置:

<div class="block"></div>
<div class="block start3"></div>

css 样式如下:

@keyframes move {
  0% {
    left: 0
  }
  100% {
    left: 100px
  }
}

.block {
  animation: 10s linear;
}

.start3 {
  animation-delay: -3s
}

这样,带有 start3 类的元素会在动画开始 3 秒后从 0% 位置移动到 100% 位置。

如果需要对象从 30% 位置移动到 100%,然后再返回到 0%,则需要使用单独的动画来实现:

@keyframes move1 {
  0% {
    left: 30%
  }
  50% {
    left: 100%
  }
}

@keyframes move2 {
  0% {
    left: 100%
  }
  50% {
    left: 0
  }
}

.block {
  animation: move1 5s, move2 5s;
}

这种方法需要单独编写动画,并在特定时间点之间创建平滑的过渡。

以上就是在 CSS 动画中如何实现对象跳跃到指定位置?的详细内容,更多请关注其它相关文章!