超棒的跨浏览器纯CSS动画实现 Animate.css使用方法

所属分类: 网页制作 / CSS 阅读数: 344
收藏 0 赞 0 分享
通常情况下如果需要生成web动画效果的话,我们肯定会考虑使用一些类库或者jQuery的animate方法,那么有什么方便的方法来快速实现动画效果呢?

在今天的这篇文章中,我们将介绍一个超棒的CSS动画实现方式 - Animate.css。这套CSS动画是由来自Manchester, UK的设计师Dan Eden开发和设计的。使用它能够很方便的给你的页面元素添加动画效果

Animate.css在线演示  http://demo.jb51.net/js/2012/Animatecss/
Animate.css下载地址 https://www.jb51.net/jiaoben/62726.html

如何使用?

使用非常简单,首先下载需要的css文件,你可以在下载地址上选择下载全部css,或者使用在线的Create custom build来生成自定义的css。

下载后将animate.css样式表引入你调用的HTML文件即可,如下:

复制代码
代码如下:

<link rel="stylesheet" type="text/css" href="css/animate.min.css" media="screen" />

当你引用以上CSS后,你可以在页面中添加相关class即可,如下:

复制代码
代码如下:

<div id="demo" class="animated tada">Animate.css Demo</div>

添加class “animated tada“到id=”demo“的元素。注意:这里tada是动画类型,你可以选择多达将近60种不同的css动画特效。

超棒的跨浏览器纯CSS动画实现 - Animate.css

以上是静态页面中的使用,如果你需要动态的调用,你可以使用类似jQuery的类库来使用addClass()方法调用动画。

这里我们使用jQuery和animate.css开发一个简单的小游戏,你需要在指定的时间内将汽车挪出铁箱。代码如下:

Javascript

我们使用addClass来操作动画,使用setTimeout来控制特定时间内的动作,代码如下:

复制代码
代码如下:

$('#msg').hide(0).html('Click the car to run away').fadeIn(200);
$('#car').show().addClass('fadeInRightBig').delay(1200).queue(function(next){
$(this).removeClass('fadeInRightBig');
next();
$(this).addClass('wobble');
});
var timer = window.setTimeout(function(){
$('#bridge').addClass('hinge');
$('#msg').hide().html('Oops, You are dead man! <div><a href="index.html">try it again?</a></div>').css({color:'red'}).fadeIn();
},
5000
);
$('#car').click(function(){
clearTimeout(timer);
$(this).delay(800).addClass('lightSpeedOut').queue(function(next){
$(this).removeClass('');
next();
$('#bridge').addClass('hinge').delay(2200).queue(function(next){
next();
});
});
$('#msg').hide().html('Congratulaions! Fast enough!').css({color:'green'}).fadeIn();
});

HTML代码
html代码很简单:

复制代码
代码如下:

<div id="msg"></div>
<div id="bridge" class="animated">
<div id="car" class="animated"></div>
</div>

CSS代码
定义了汽车和箱柜的样式:

复制代码
代码如下:

#car{
padding: 10px;
background: #202020;
color: #fff;
width: 400px;
height: 220px;
border-radius: 5px;
background: url('images/car.png') no-repeat center bottom;
margin: 0 auto;
display:none;
z-index: 10;
position: static;
}
#bridge{
border-radius: 15px;
background: url('images/bridge.png') no-repeat 50% 50%;
margin: 0 auto;
width: 400px;
height: 250px;
z-index: 20;
position: static;
}
#msg{
border-radius: 15px;
width: 600px;
margin: 100px auto;
text-align: center;
font-size: 38px;
font-weight: bold;
font-family: Arial;
background: #333;
color: #EEEEEE;
}
#msg a{
color: #CCC;
}

希望大家喜欢这个小游戏,如果你有任何问题和建议,请给我们留言!
更多精彩内容其他人还在看

2013年五大主流浏览器 HTML5 与 CSS3 兼容性大比拼

这篇文章主要介绍了2013年五大主流浏览器 HTML5 和 CSS3 兼容性大比拼,需要的朋友可以参考下
收藏 0 赞 0 分享

前端设计师需要了解的9个问题

这篇文章主要介绍了前端设计师需要了解的9个问题以及注意事项,非常的实用,是篇非常不错的文章,这里推荐给大家
收藏 0 赞 0 分享

CSS强制性换行的方法区别详解

自动换行问题,正常字符的换行是比较合理的,而连续的数字和英文字符常常将容器撑大,挺让人头疼,下面介绍的是CSS如何实现换行的方法对于div,p等块级元素正常文字的换行(亚洲文字和非亚洲文字)元素拥有默认的white-space:normal,当定义的宽度之后自动换行
收藏 0 赞 0 分享

CSS语义化命名方式及常用命名规则

本文搜集了一些CSS语义化命名方式以及命名规则。如有错误或不妥之处,敬请指出,欢迎你提出更好的建议,加插更多的命名规范。
收藏 0 赞 0 分享

ul li内容宽度的问题的解决方案

在IE6下只要我设置LI的宽度为auto,不论LI里面的内容多长,LI的宽度始终是100%,即UL的宽度(这里我已经写死了UL的宽度)。设置max-width也没用。高手们,在IE系列浏览器中如何使LI的宽度真正的随着内容增长而增长呢?像FF那样。
收藏 0 赞 0 分享

html5+css3气泡组件的实现

本文是html5+css3系列教程的第一篇,给大家讲述html5+css3实现气泡组件,讲解的十分的详细,这里推荐给大家,希望对大家能有所帮助
收藏 0 赞 0 分享

html5+css3之CSS中的布局与Header的实现

本文从CSS3的布局(CSS的布局的演化、CSS3盒模型-box-sizing、float布局中的bfc、Flexbox简介)Header布局的实现(float实现布局、Header js的实现)向我们展示了HTML5与CSS3的魅力。
收藏 0 赞 0 分享

一款恶搞头像特效的制作过程 利用css3和jquery

今天给大家介绍一款恶搞头像特效的制作过程,你可以把任意一张照片放到跳舞的漫画中,为他带上不同的帽子,让他翩翩起舞,下面我们一起来看一下制作过程和效果
收藏 0 赞 0 分享

大图片根据分辨率自适应宽度仍居中显示

一个1920*900的大图,在1024*768的分辨率下仍居中显示,如何做到这一点,下面是一个可行的解决方案
收藏 0 赞 0 分享

CSS3提交意见输入框样式代码

这个提交意见输入框,结构使用到了table,样式用的css3,包含了多方面的知识,比较适合新手朋友们
收藏 0 赞 0 分享
查看更多