通过 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. Qt Widgets Application可执行程序发布方式

    前言 写好的Qt程序想打包发布,之前按照Qt快速入门系列教程里的方法,直接选release,构建,之后找到exe,拷贝几个dll,然而报错如图: 后来找到教程:http://tieba.baidu.c ...

  2. json数据的格式,JavaScript、jQuery读取json数据

    JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON的特点: JSON 是纯文本 JSON 具有“自我描述性”(人类可读) JSON 具有层级 ...

  3. Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案

     Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案 RoundedBitmapDrawable是Android在support v4的扩展包中新 ...

  4. POJ1308/HDU1325/NYOJ129-Is It A Tree?,并查集!

    Is It A Tree? Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 28838   Accepted: 9843 -& ...

  5. HDU 4945 (dp+组合数学)

    2048 Problem Description Teacher Mai is addicted to game 2048. But finally he finds it's too hard to ...

  6. Java操作redis【二十】

    1.首先需要将redis的绑定地址为127.0.0.1去掉,同时将redis的保护模式去掉,并且开放6379端口. 如果是保护模式需要输入密码才能连接. (1)去掉绑定地址: (2)去掉保护模式: ( ...

  7. SQL SERVER 2012 第三章 T-SQL 基本语句 group by 聚合函数

    select Name,salesPersonID From Sales.store where name between 'g' and 'j' and salespersonID > 283 ...

  8. cogs 66. [HAOI2004模拟] 数列问题

    66. [HAOI2004模拟] 数列问题 ★☆   输入文件:dfs3.in   输出文件:dfs3.out   简单对比时间限制:1 s   内存限制:128 MB 问题描述试编程将 1 至 N ...

  9. TensorFlow-GPU环境配置之三——安装bazel

    TensorFlow的源码需要使用bazel进行编译,所以需要安装bazel构建工具 1.安装JDK 8 sudo add-apt-repository ppa:webupd8team/java su ...

  10. kkpager的改进,Ajax数据变化但是页码不变的问题

    原文:http://blog.csdn.net/xiaojian1018/article/details/45564051 kkpager 是一个简单分页展示插件,需要依赖jquery.下载地址:ht ...