简介
animate.css 是一个来自国外的 CSS3 动画库,它预设了抖动(shake)、闪烁(flash)、弹跳(bounce)、翻转(flip)、旋转(rotateIn/rotateOut)、淡入淡出(fadeIn/fadeOut)等多达 60 多种动画效果,几乎包含了所有常见的动画效果。
虽然借助 animate.css 能够很方便、快速的制作 CSS3 动画效果,但还是建议看看 animate.css 的代码,也许你能从中学到一些东西。
官网及下载:http://daneden.github.io/animate.css/
兼容
浏览器兼容:当然是只兼容支持 CSS3 animate 属性的浏览器,他们分别是:IE10+、Firefox、Chrome、Opera、Safari。
使用方法
1、引入文件
<link rel="stylesheet" href="animate.min.css">
2、HTML 及使用
<div class="animated bounce" id="dowebok"></div>
给元素加上 class 后,刷新页面,就能看到动画效果了。animated 类似于全局变量,它定义了动画的持续时间;bounce 是动画具体的动画效果的名称,你可以选择任意的效果。
如果动画是无限播放的,可以添加 class infinite。
你也可以通过 JavaScript 或 jQuery 给元素添加这些 class,比如:
$(function(){ $('#dowebok').addClass('animated bounce'); });
有些动画效果最后会让元素不可见,比如淡出、向左滑动等等,可能你又需要将 class 删除,比如:
$(function(){ $('#dowebok').addClass('animated bounce'); setTimeout(function(){ $('#dowebok').removeClass('bounce'); }, 1000); }); 或者鼠标悬浮的时候: $(function(){ $('#test').hover(function(){ $(this).addClass('bounce'); },function(){ $(this).removeClass('bounce'); }); });或者单击的时候:$(function(){ $('#test').click(function(){ $(this).addClass('bounce');setTimeout(function(){ $('#dowebok').removeClass('bounce'); }, 1000);});
});
animate.css 的默认设置也许有些时候并不是我们想要的,比如上面加的那个bounce动画,最后你要设置一个定时器才能把类样式remove掉,但定时器的触发时间是要根据动画完成的时间决定的,至少你不能在动画还在执行的时候就remove掉,所以,我们可以在Animate.css样式表中查看该样式的 animate-duration属性来得到时间。另外你还可以在页面重新设置这个元素上面动画所执行的时间用于覆盖Animate.css样式表里的默认设置,比如:
#dowebok { -webkit-animate-duration: 2s; //动画持续时间
-webkit-animation-iteration-count: 2; //动画执行次数}-webkit-animation-delay: 1s; //动画延迟时间
*请注意在属性前面添加浏览器前缀;
但是这样有个问题,就是直接在元素样式里面加的话,这个元素上所有的动画都会变成2s。 第二种方法就是在Animate.css样式表中找到.bounce这个类样式,只在这一个动画里面写 动画持续时间的限制,其它元素就不会受影响了。。。