通过 CSS3,我们能够创建动画,这可以在许多网页中取代动画图片、Flash 以及 JavaScript。

如下动画,常用于手机端,提示用户往下拖动的渐隐渐出效果。

Demo

关键CSS代码

1. 给相应的DIV层,定义动画的名称(mymove)、花费时间(1.6s)、播放次数(infinite)

 animation:mymove 1.6s infinite;
-moz-animation:mymove 1.6s infinite; /* Firefox */
-webkit-animation:mymove 1.6s infinite; /* Safari and Chrome */
-o-animation:mymove 1.6s infinite; /* Opera */

2. 设置@keyframes

 @-webkit-keyframes mymove {
0%,30% {opacity: 0;-webkit-transform: translate(0,-10px);}
60% {opacity: 1;-webkit-transform: translate(0,0);}
100% {opacity: 0;-webkit-transform: translate(0,10px);}
}
@-moz-keyframes mymove {
0%,30% {opacity: 0;-moz-transform: translate(0,-10px);}
60% {opacity: 1;-moz-transform: translate(0,0);}
100% {opacity: 0;-moz-transform: translate(0,10px);}
}
@keyframes mymove {
0%,30% {opacity: 0;transform: translate(0,-10px);}
60% {opacity: 1;transform: translate(0,0);}
100% {opacity: 0;transform: translate(0,10px);}
}

完整代码(点击展开)

 <!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Animater</title>
<style>
.container{
width:625px;
height:204px;
border:1px solid #ccc;
position:relative;
} .start{
position:absolute;
left:50%;
top:50%;
margin-left:-25px;
margin-top:-24px;
width:50px;
height:48px;
animation:mymove 1.6s infinite;
-moz-animation:mymove 1.6s infinite; /* Firefox */
-webkit-animation:mymove 1.6s infinite; /* Safari and Chrome */
-o-animation:mymove 1.6s infinite; /* Opera */
} @-webkit-keyframes mymove {
0%,30% {opacity: 0;-webkit-transform: translate(0,-10px);}
60% {opacity: 1;-webkit-transform: translate(0,0);}
100% {opacity: 0;-webkit-transform: translate(0,10px);}
}
@-moz-keyframes mymove {
0%,30% {opacity: 0;-moz-transform: translate(0,-10px);}
60% {opacity: 1;-moz-transform: translate(0,0);}
100% {opacity: 0;-moz-transform: translate(0,10px);}
}
@keyframes mymove {
0%,30% {opacity: 0;transform: translate(0,-10px);}
60% {opacity: 1;transform: translate(0,0);}
100% {opacity: 0;transform: translate(0,10px);}
} </style> </head> <body>
<div class="container">
<a class="start"><img src="data:images/arrow.png" /></a>
</div>
</body>
</html>

CSS3 动画 @keyframes的更多相关文章

  1. 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动用属性:animation-play-state:paused暂停,在微信和safari里设置paused无效,在QQ里是正常的

    这几天遇到了两个很奇葩的问题,终于找到原因,趁还记得解决方法,赶紧记下来: 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动可以用属性:animat ...

  2. Css3动画-@keyframes与animation

    一.@keyframe 定义和用法 @keyframes是用来创建帧动画的,我们通过这个属性可以用纯css来实现一些动画效果. 一般格式是: @keyframes 动画名称{ 0%{ 动画开始时的样式 ...

  3. Less 创建css3动画@keyframes函数

    封装: /** * animation */ .keyframes (@prefix,@name,@content) when (@prefix=def) { @keyframes @name { @ ...

  4. CSS3动画@keyframes图片变大变小颜色变化

    在我做公司官网的时候也会帮着写一些游戏的静态页,今天产品要求为了突出一个按钮,他要有颜色的变化而且要变大变小,然后我就在网上搜了下呼吸灯和其他的案例,写了个小damo,看着还有些魔性嘞. html: ...

  5. css3动画@keyframes示例

    .active { animation: chuiziza 0.5s ease 1 forwards; } .feijindan { display: block; animation: fei 2s ...

  6. CSS3 动画 animation和@keyframes

    CSS3 @keyframes 规则 如需在 CSS3 中创建动画,您需要学习 @keyframes 规则. @keyframes 规则用于创建动画.在 @keyframes 中规定某项 CSS 样式 ...

  7. css3动画基础详解(@keyframes和animation)

    我们经常会看到CSS3能制作出很炫酷的动画效果,但是自己却只能做一些简单的.原因是对CSS3动画只知其一,不知其二.最近正好有做动画的项目,于是花时间将css3动画做了一个探究之旅,记录在册. 动画是 ...

  8. 原生js判断css3动画过度(transition)结束 transitionend事件 以及关键帧keyframes动画结束(animation)回调函数 animationEnd 以及 css 过渡 transition无效

      上图的 demo 主要讲的 是 css transition的过渡回调函数transitionend事件: css3 的时代,css3--动画 一切皆有可能: 传统的js 可以通过回调函数判断动画 ...

  9. css3动画第一式--简单翻滚

    在w3cschool上面查阅css3的动画语法手册时,发现“css3 动画”栏目首页放了一个翻滚的div动画案例,觉得挺好看的,于是就自己模仿着写了一下,感觉还行O(∩_∩)O哈哈~ 查看原地址 下面 ...

随机推荐

  1. Open DBDiff 0.9

    SQL Server 迁移过程经常会的出现,需要比对两个数据库之间,或者是表之间到底有何不同 SQL server 自带的tablediff Utility 是一个命令行的工具,对于偶尔需要做一次的体 ...

  2. [luoguP1082] 同余方程(扩展欧几里得)

    传送门 ax≡1(mod b) 这个式子就是 a * x % b == 1 % b 相当于 a * x - b * y == 1 只有当 gcd(a,b) == 1 时才有解,也就是说 ax + by ...

  3. 选择器的使用(first-child和last-child选择器)

    <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta ...

  4. Android GIS开发系列-- 入门季(7) 利用GeometryEngine坐标转换、计算距离与面积等

    GeometryEngine是Arcgis的重要工具类,利用此工具类,可以计算地图上的距离.面积,将点.线.面转化为Json数据,将Json转化为点线面,坐标转换作用非常强大. 一.坐标转化 将用到方 ...

  5. python 进程内存增长问题, 解决方法和工具

    转载:http://drmingdrmer.github.io/tech/programming/2017/05/06/python-mem.html#pyrasite-%E8%BF%9E%E6%8E ...

  6. laravel notification

    mail篇 public function via($notifiable) { return ['mail']; } 1.新建notification类 php artisan make:notif ...

  7. SpringBoot 基于jjwt快速实现token授权

    1.添加maven依赖注解 <!--JJWT库--> <dependency> <groupId>io.jsonwebtoken</groupId> & ...

  8. Windows TAKEOWN & ICACLS

    TAKEOWN:takeown   /f 文件名              获取该文件的所属权takeown /f /r /d n 文件夹       获取整个文件夹及其下面子目录文件的所属权 TAK ...

  9. 详细介绍Linux telnet命令的使用

    对Linux系统进行远程登录,Linux telnet命令是必须得掌握的一个知识,虽然telnet并不是唯一的远程登录的方案,但是不可否认它是最常用的,所以很有必要详细了解Linux telnet命令 ...

  10. Python开发【第*篇】【Socket网络编程】

    1.Socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. so ...