CSS3动画分为二部份:

1、定义动画行为:

使用@keyframes定义动画行为,有两种方式:

方式一:仅定义动画起始样式,与动画结束样式

 @keyframes (动画行为名称)
{
from {background: red;}
to {background: yellow;}
} @-moz-keyframes (动画行为名称)
{
from {background: red;}
to {background: yellow;}
} @-webkit-keyframes (动画行为名称)
{
from {background: red;}
to {background: yellow;}
} @-o-keyframes (动画行为名称)
{
from {background: red;}
to {background: yellow;}
}

方式二:定义动画进展中的每步样式,百分比表示动画执行的进度百分值

 @keyframes (动画行为名称)
{
0% {background: red;}
25% {background: yellow;}
50% {background: blue;}
100% {background: green;}
} @-moz-keyframes (动画行为名称)
{
0% {background: red;}
25% {background: yellow;}
50% {background: blue;}
100% {background: green;}
} @-webkit-keyframes (动画行为名称)
{
0% {background: red;}
25% {background: yellow;}
50% {background: blue;}
100% {background: green;}
} @-o-keyframes (动画行为名称)
{
0% {background: red;}
25% {background: yellow;}
50% {background: blue;}
100% {background: green;}
}

2、定义动画执行方式。

将动画的行为附加到元素上,使其按照此规则执行动画效果,但我们还要给动画设定执行方式,比如什么动画让它多长时间完成,是否循环执行动画等。

动画执行方式语法:

 animation: name duration timing-function delay iteration-count direction;

语法中译:

 animation:
动画行为名称,在keyframes内定义的名称
动画周期,比如 5s 表示5秒完成此动画一次
动画的速度曲线, linear | ease | ease-in | ease-out | ease-in-out | cubic-bezier(n,n,n,n)
动画何时开始,默认值0,立刻播放
动画被播放的次数,默认值1,值infinite 表示一直循环播放
动画是否在下一周期逆向地播放,可选值: normal(默认,不逆向地播放) | alternate(动画应该轮流反向播放)

3、可以通过增加CSS样式:animation-play-state 来控制CSS3动画暂停与播放

 animation-play-state: paused | running;
-webkit-animation-play-state: paused | running ;

代码演示:

 <!DOCTYPE html>
<html lang="zh-cmn-Hans">
<head>
<meta charset="utf-8">
<style>
a{width:100px;height:30px;display:block;} @keyframes myan{
0% {background:#066;left:20px;top:20px;}
50% {background:#090;left:100px;top:100px;}
100% {background:#093;left:300px; top:300px;}
} #a{
position:absolute;
animation: myan 5s linear 2s infinite alternate;
} #a:hover{
/* 这里使动画停止了 */
animation-play-state:paused;
}
</style>
</head> <body>
<div style="position:relative;margin:50px;width:100px;height:100px;background:#ccc;"> <a href="#" id="a">1111111</a>
</div> </body>
</html>

CSS3 :animation 动画的更多相关文章

  1. css3 animation动画特效插件的巧用

    这一个是css3  animation动画特效在线演示的网站 https://daneden.github.io/animate.css/ 下载 animate.css文件,文件的代码很多,不过要明白 ...

  2. css3 animation动画技巧

    一,css3 animation动画前言 随着现在浏览器对css3的兼容性越来越好,使用css3动画来制作动画的例子也越来越广泛,也随着而来带来了许多的问题值得我们能思考.css3动画如何让物体运动更 ...

  3. CSS3 animation动画

    CSS3 animation动画 1.@keyframes 定义关键帧动画2.animation-name 动画名称3.animation-duration 动画时间4.animation-timin ...

  4. CSS3 animation 动画

    今天看到一个很酷的logo看了下他用的是animation 动画效果,就拿来做例子 浏览器支持 Internet Explorer 10.Firefox 以及 Opera 支持 animation 属 ...

  5. css3 animation(动画)笔记

    在开始介绍Animation之前我们有必要先来了解一个特殊的东西,那就是"Keyframes",我们把他叫做“关键帧”,玩过flash的朋友可能对这个东西并不会陌生.下面我们就一起 ...

  6. css3 animation 动画属性简介

    animation 动画属性介绍 animation 属性是一个简写属性,用于设置动画属性: 1. animation-name----规定需要绑定到选择器的 keyframe 名称. 语法:anim ...

  7. css3 animation动画事件

    当使用css3时,会遇到利用@keyframes来定义动画事件,利用以下3个事件,能够捕捉当前元素的动画: AnimationEnd //动画结束时 AnimationStart  //动画開始 An ...

  8. CSS3 animation动画,循环间的延时执行时间

    如下代码,其中的delay值为3s,但是animation按现在的规则,这个delay是指动画开始前的延时,在动画循环执行间,这个delay是不生效的. .item{ webkit-animation ...

  9. css3 animation动画使用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 关于css3 Animation动画

    在介绍animation之前有必要先来了解一个东西,那就是“keyframes”,我们把他叫做“关键帧”: 在使用transition制作一个简单的transition效果时,包括了初始属性,最终属性 ...

随机推荐

  1. QS:vue中qs的使用

    关于Vue中,序列化字符串,处理发送请求的参数 使用工具qs来处理参数 步骤: 1.首先先下载: npm i qs 2.然后引入 : import qs from 'qs' 3.qs主要有两个方法 : ...

  2. EJB 配置多个数据源

    1.修改jboss-6.simple\server\default\deploy\transaction-jboss-beans.xml 配置文件 <bean name="CoreEn ...

  3. Ajax全接触(1)

    Ajax全称:Asynchronous JavaScript and XML(异步的JavaScript和XML) .Ajax不是某种编程语言 是一种在无需重新加载整个网页的情况之下能够更新部分网页的 ...

  4. 书籍《深入理解Spring Cloud 与微服务构建》勘误、源码下载

    转载请标明出处: https://blog.csdn.net/forezp/article/details/79638403 本文出自方志朋的博客 文章勘误 错误在所难免,欢迎大家批评指正,在文章下方 ...

  5. swift计算label动态宽度和高度

    swift计算label动态宽度和高度 func getLabHeigh(labelStr:String,font:UIFont,width:CGFloat) -> CGFloat { let ...

  6. c# Hash一致算法实现负载均衡

    开篇吹牛..... 不吹了,因为我不擅长算法,就不胡说八道了. 现在一般的实现负载均衡,主要采用2种方法: 1.轮训    2.负载均衡算法 轮训就不说了,负载均衡现在一般采用HASH一致算法 不多说 ...

  7. code ELIFECYCLE (代码周期)

    问题:build 不成功 解决:新建一个dist 文件,没有自动新建dist 文件 问题 :npm run dev 时候 解决:

  8. 【Nowcoder 上海五校赛】二数(模拟)

    题目描述: 我们把十进制下每一位都是偶数的数字叫做“二数”. 小埃表示自己很聪明,最近他不仅能够从小数到大:2,3,4,5....,也学会了从大数到小:100,99,98...,他想知道从一个数开始数 ...

  9. 如何解决tomcat中的应用报java.io.IOException: 您的主机中的软件中止了一个已建立的连接

    转载: 施勇: https://blog.csdn.net/shiyong1949/article/details/72845634 这两天突然看到日志文件中有“java.io.IOException ...

  10. 利用python和opencv批量去掉图片黑边

    import os import cv2 import numpy as np from scipy.stats import mode import time import concurrent.f ...