使用css3属性做一个循环旋转的动画

做这个动画是使用css3中的animation 和 @-webkit-keyframes 组合使用来完成

//这是html部分代码
<div class="home">
    <img
      alt="logo"
      src="http://b-ssl.duitang.com/uploads/item/201206/26/20120626190359_MjB3s.jpeg"
      id="images"
      style="width: 200px;height: 200px;border-radius: 50%;"
    />
  </div>
  
  //这是css部分代码
  #images {
  -webkit-animation: spin 5s linear infinite;
  animation: spin 5s linear infinite;
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
    transition: all 5s;
  }
}

上面的代码粘贴后直接就能运行,也可以绑定触发器,例如:#images 可以写为 #images:hover 表示给绑定了一个触发器hover,当鼠标在图片上方时动画才执行

下面我们简单介绍一下animation和@-webkit-keyframes的属性

animation (在使用的时候可以加上-webkit-做下兼容处理)是一个复合属性,定义如下:
animation: name duration timing-function delay iteration_count direction
name: 是 @-webkit-keyframes 中需要指定的方法,用来执行动画。

duration: 动画一个周期执行的时长。

timing-function: 动画执行的效果,可以是线性的,也可以是"快速进入慢速出来"等。

delay: 动画延时执行的时长,如果不需要可以省略。

iteration_count: 动画循环执行次数,如果是infinite,则无限执行。

direction: 动画执行方向,省略的话默认顺时针。

@-webkit-keyframes 为创建动画

@keyframes规则——指定一个CSS样式,动画将逐步更改样式。可以改变任意多的样式任意多的次数。
其中from和to 两个属性,“from” 和 "to"来规定变化发生的时间,就是指定动画执行的初始值和结束值。也可以用百分比,“from” 和 "to"分别等同于 %和100%,0%是动画的开始,100%是动画的完成。
-webkit-animation-play-state:paused; 暂停动画的执行。

animation和transition的区别

能实现动态效果的除了animation还有transition
transition只能从一组css属性变成另一组css属性。animation则可以在多组属性之间变换。
transition必须使用触发器触发,animation可以使用触发器,也可以在页面加载完成的时候自动触发

想仔细了解各个属性的话可以看一下这篇文章,感觉写的很详细,https://www.cnblogs.com/bobodeboke/p/6252869.html

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值