CSS3动画库 —— Animate.css

简介

animate.css 是一个来自国外的 CSS3 动画库,它预设了抖动(shake)、闪烁(flash)、弹跳(bounce)、翻转(flip)、旋转(rotateIn/rotateOut)、淡入淡出(fadeIn/fadeOut)等多达 60 多种动画效果,几乎包含了全部常见的动画效果。css

虽然借助 animate.css 可以很方便、快速的制做 CSS3 动画效果,但仍是建议看看 animate.css 的代码,也许你能从中学到一些东西。git

官网及下载:http://daneden.github.io/animate.css/github

兼容

浏览器兼容:固然是只兼容支持 CSS3 animate 属性的浏览器,他们分别是:IE10+、Firefox、Chrome、Opera、Safari。web

使用方法

一、引入文件

<link rel="stylesheet" href="animate.min.css">

二、HTML 及使用

<div class="animated bounce" id="dowebok"></div>

给元素加上 class 后,刷新页面,就能看到动画效果了。animated 相似于全局变量,它定义了动画的持续时间;bounce 是动画具体的动画效果的名称,你能够选择任意的效果。浏览器

若是动画是无限播放的,能够添加 class infinite。动画

你也能够经过 JavaScript 或 jQuery 给元素添加这些 class,好比:this

$(function(){
    $('#dowebok').addClass('animated bounce');
});

有些动画效果最后会让元素不可见,好比淡出、向左滑动等等,可能你又须要将 class 删除,好比:spa

$(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样式表里的默认设置,好比:code


#dowebok {
    -webkit-animate-duration: 2s;    //动画持续时间
-webkit-animation-delay: 1s;    //动画延迟时间
    -webkit-animation-iteration-count: 2;    //动画执行次数}

*请注意在属性前面添加浏览器前缀;xml


可是这样有个问题,就是直接在元素样式里面加的话,这个元素上全部的动画都会变成2s。 第二种方法就是在Animate.css样式表中找到.bounce这个类样式,只在这一个动画里面写 动画持续时间的限制,其它元素就不会受影响了。。。