【问题标题】:Combining two animations with pure CSS用纯 CSS 组合两个动画
【发布时间】:2019-07-11 02:44:30
【问题描述】:

我正在尝试将两个动画平滑地组合为我网站首页上的标题以淡入和向上,然后向左滑动,使两个 ' 左对齐而不是居中对齐。尝试这样做时,我遇到了两个动画同时运行或一个运行在另一个之上的问题。

我尝试在标签中添加两个单独的 CSS 类,并且只创建一个来处理这两个 's.我相信创建两个 slideLeftTop 和 slideLeftBottom 会更有效,因为底部的文本更长,最终目标是让两者左对齐,而不是一开始就居中对齐。

@-webkit-keyframes slideLeftTop{
  0% {
    -webkit-transform: translate3d(0,100%,0);
  }
  100% {
    -webkit-transform: translateX(-20%)
  }
}

https://jsfiddle.net/k2tvur84/1/

我希望标题淡入和向上,暂停 3 秒,然后向左滑动大约 40% 的页面。

【问题讨论】:

标签: html css css-animations


【解决方案1】:

您可以将所有更改与关键帧结合起来。 这是你想要的吗?

.animated {
  -webkit-animation-duration: 7s;
  animation-duration: 7s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0,100%,0);
    -ms-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
  25% {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  70% { -webkit-transform: translate3d(0,100%,0);}
  100% {    -webkit-transform: translateX(-20%)}
}

你可以看看here这个方法。希望有所帮助!

【讨论】:

  • 感谢您的快速回复!我看到这种方法的唯一问题是,当您将所有更改与关键帧结合起来时,它也会将底部的较长文本与顶部居中对齐。我希望它们左对齐并移到左边....我希望这是有道理的
  • 抱歉,我不太明白.. 你想让两个 h1 都是 text-align: left?
  • 在这里,这应该是我正在寻找的一个更好的例子。再次感谢!imgur.com/fZdVsoP
  • 你可以把上面的改成这样:99% {-webkit-transform: translateX(-20%);文本对齐:居中; } 100% { 文本对齐:左; }。与您的 imgur 不完全一样,因为 text-align 无法转换...如果您想更改标记(例如,两个 h1 在语义上不正确,我认为 span 更适合充当 div 的子级),您可以做这样的事情:stackoverflow.com/questions/18235764/…
猜你喜欢
  • 2017-02-20
  • 2019-04-19
  • 2013-07-11
  • 1970-01-01
  • 2013-03-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多