CSS3标志动画?

时间:2015-04-07 10:45:54

标签: css3

我需要为徽标设置动画,此链接有一个示例(http://www.minmedia.nl/footer

我的问题如下: 只有" Webdesign by"部分和徽标的双色药丸部分应在动画开头可见。当你将鼠标悬停在它上面时,药丸应该向左移动,"网页设计由"部分现在应该淡出。此外,当"丸"徽标的一部分向左滑动,徽标的最后部分应该可见并向左滑动。这样最终的展示就是完整的标志。 当你再次移开你的鼠标时,它应该反过来" webdesign by"文字和"丸"标识的一部分应该是可见的。

我对HTML和CSS有基本的了解,但我对CSS3动画/过渡没有任何经验。

如果有人可以帮助我,那会很棒,或者如果你碰巧知道链接到一个页面,可以帮助我,那也很棒。

1 个答案:

答案 0 :(得分:0)

以下是 如何使用关键帧的示例。

需要根据您的需要调整时间,以及为-moz-添加前缀,但最初的工作是为您完成的。通过使用包装器,可以很容易地为您的元素设置隐藏溢出,但严格来说,您可以在没有的情况下离开,但这又取决于您的情况。

我还假设您的图像是80px * 80px,但这可以调整。



.wrap {
  width: 200px;
  position: relative;
  height: 80px;
  vertical-align: middle;
  overflow:hidden;
}
.wrap img {
  height: 80px;
  position: absolute;
  top: 0;
  left: calc(100% - 80px);
  -webkit-animation: 3s picMove forwards;
  animation: 3s picMove forwards;
}
.wrap div {
  display: inline-block;
  position: absolute;
  height: 80px;
  line-height: 80px;
  top: 0;
}
.firstText {
  left: 0;
  -webkit-animation: 3s fade forwards;
  animation: 3s fade forwards;
  opacity: 0;
}
.secondText {
  left: 100%;
  -webkit-animation: 3s movefade forwards;
  animation: 3s movefade forwards;
}
@-webkit-keyframes fade {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes movefade {
  0% {
    opacity: 0;
    left: 100%;
  }
  100% {
    opacity: 1;
    left: 80px;
  }
}
@-webkit-keyframes movefade {
  0% {
    opacity: 0;
    left: 100%;
  }
  100% {
    opacity: 1;
    left: 80px;
  }
}
@-webkit-keyframes picMove {
  0% {
    left: calc(100% - 80px);
  }
  100% {
    left: 0;
  }
}
@keyframes picMove {
  0% {
    left: calc(100% - 80px);
  }
  100% {
    left: 0;
  }
}

<div class="wrap">
  <div class="firstText">First</div>
  <img src="http://placekitten.com/g/300/300" />
  <div class="secondText">Second</div>
</div>
&#13;
&#13;
&#13;