CSS3动态效果学习笔记
来源: 阅读:1004 次 日期:2015-03-02 11:11:03
温馨提示: 小编为您整理了“CSS3动态效果学习笔记”,方便广大网友查阅!

@keyframe 规定动画

一般是跟animation一起用

animation : 规定动画的名字 规定动画的时间 规定动画的速度曲线。

@keyframe 定义动画的名称{ 动画时长的百分比。{一个或多个合法的 CSS 样式属性} }

目前大部分浏览器都没有支持@keyframe 和animation;所以要分浏览器书写

@keyframe

1.safari和chrome浏览器

@-webkit-keyframes myfrom{

from {top:0;}

to {top:200px;}

}

2.Firefox浏览器

@-moz-keyframes myfrom{

from {top:0;}

to {top:200px;}

}

3.Opera浏览器

@-o-keyframes myfrom{

from {top:0;}

to {top:200px;}

}

animation

1.safari和chrome浏览器

@-webkit-animation : myfrom 5s infinite

2.Firefox浏览器

@-moz-animation : myfrom 5s infinite

2.Opera浏览器

@-o-animation : myfrom 5s infinite

例子

代码如下

<!DOCTYPE html>

<html>

<head>

<title>CSS3动态效果demo</title>

<meta charset="utf-8">

<meta name="keyword" content="CSS3动态效果demo">

<meta name="description" content="CSS3动态效果demo">

<meta name="author" content="戎sir">

<link rel="stylesheet" type="text/css" href="css.css">

</head>

<body>

<div class="main">

<div class="cont">

<div class="cont1 conns">

animation

动画属性

@keyframes:

规定动画

</div>

<span data="1">源代码</span>

</div>

<div class="cont">

<div class="cont2 conns">

animation-delay:

规定动画何时开始

</div>

<span data="2">源代码</span>

</div>

<div class="cont">

<div class="cont3 conns">

animation-iteration-count:

规定动画次数

</div>

<span data="3">源代码</span>

</div>

<div class="cont">

<div class="cont4 conns">

animation-direction:

规定下次动画逆向

</div>

<span data="4">源代码</span>

</div>

<div class="cont">

<div class="cont5 conns">

</div>

<span data="5">源代码</span>

</div>

<div class="cont">

<div class="cont6 conns">

</div>

<span data="6">源代码</span>

</div>

<div class="cont">

<div class="cont7 conns">

</div>

<span data="7">源代码</span>

</div>

<div class="cont">

<div class="cont8 conns">

</div>

<span data="8">源代码</span>

</div>

</div>

<div class="overbody hidden"></div>

<div class="commom" id="show1">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont1 conns"&gt;animation-delay:规定动画何时开始 &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

body{background-color: #000;}

.cont{

border: 1px solid #fff;

float: left;

width: 250px;

height: 250px;

position: relative;

box-sizing:border-box;

}

.conns{white-space: initial;}

.cont a{

position: absolute;

top:50px;

left: 5px;

color: #e3e3e3;

word-wrap: break-word;

display: block;

width: 5px;

text-decoration: none;

}

.cont1{

width: 100px;

height:80px;

margin:0 auto;

background-color: #999;

color: #fff;

padding: 10px;

position:relative;

overflow: hidden;

animation:myfrom 5s infinite;

-webkit-animation:myfrom 5s infinite;

}

@-webkit-keyframes myfrom{

from {top:0;}

to {top:150px;}

}

@keyframes myfrom{

from {top:0;}

to {top:150px;}

}</textarea>

</div>

<div class="commom" id="show2">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont2 conns"&gt;animation 动画属性,@keyframes:规定动画 &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

.cont2{

width: 80px;

height:80px;

margin:0 auto;

background-color: #999;

color: #fff;

padding: 10px;

position:relative;

overflow: hidden;

animation:myfrom 5s infinite;

-webkit-animation:myfrom 5s infinite;

animation-delay:2s;

-webkit-animation-delay:2s;

}

其余css同第一个

</textarea>

</div>

<div class="commom" id="show3">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont3 conns"&gt;animation-iteration-count: 规定动画次数&lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

.cont3{

width: 80px;

height:80px;

margin:0 auto;

background-color: #999;

color: #fff;

padding: 10px;

position:relative;

overflow: hidden;

animation:myfrom 5s infinite;

-webkit-animation:myfrom 5s infinite;

animation-iteration-count:2;

-webkit-animation-iteration-count:2;

}

其余css同第一个

</textarea>

</div>

<div class="commom" id="show4">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont4 conns"&gt;animation-direction: 规定下次动画逆向&lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

.cont4{

width: 80px;

height:80px;

margin:0 auto;

background-color: #999;

color: #fff;

padding: 10px;

position:relative;

overflow: hidden;

animation:myfrom 5s infinite;

-webkit-animation:myfrom 5s infinite;

animation-direction:alternate;

-webkit-animation-direction:alternate;}

其余css同第一个

</textarea>

</div>

<div class="commom" id="show5">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont5 conns"&gt; &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

.cont5{

margin: 6em auto;

font-size: 10px;

position: relative;

border: 1.1em solid rgba(255, 255, 255, 0.2);

border-left: 1.1em solid #ffffff;

-webkit-animation: cont5 1.1s infinite linear;

animation: cont5 1.1s infinite linear;

}

.cont5,.cont5:after{

border-radius: 50%;

width: 10em;

height: 10em;

}

@keyframes cont5{

from {-webkit-transform: rotate(0deg);transform: rotate(0deg);}

to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}

}

@-webkit-keyframes cont5{

from {-webkit-transform: rotate(0deg);transform: rotate(0deg);}

to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}

}</textarea>

</div>

<div class="commom" id="show6">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont6 conns"&gt; &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

body{background-color: #000;}

.cont6{

height: 120px;

width: 120px;

margin: 50px auto;

border-radius: 50%;

background:linear-gradient(left,#fff,#000);

background:-webkit-linear-gradient(left,#fff 10%,rgba(255,255,255,0) 40%);

background:-moz-linear-gradient(left,#fff 10%,rgba(255,255,255,0) 40%);

background:-o-linear-gradient(left,#fff 10%,rgba(255,255,255,0) 40%);

background:-ms-linear-gradient(left,#fff 10%,rgba(255,255,255,0) 40%);

position: relative;

-webkit-animation: cont6 1.1s infinite linear;

animation: cont6 1.1s infinite linear;

}

.cont6:before{

height: 50%;

width: 50%;

background:#fff;

content: '';

display: block;

border-radius:100% 0 0 0;

position: absolute;

top:0;

left: 0;

}

.cont6:after{

height: 75%;

width: 75%;

margin: auto;

background:#000;

content:'';

display: block;

border-radius:50%;

position: absolute;

top:0;left: 0;

right: 0;

bottom: 0;

}

@keyframes cont6{

from {-webkit-transform: rotate(0deg);transform: rotate(0deg);}

to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}

}

@-webkit-keyframes cont6{

from {-webkit-transform: rotate(0deg);transform: rotate(0deg);}

to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}

}</textarea>

</div>

<div class="commom" id="show7">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont7 conns"&gt; &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

body{background-color: #000;}

.cont7,.cont7:before,.cont7:after{

height: 25px;

width: 25px;

border-radius: 50%;

animation:cont7 1.8s infinite ease-in-out;

-webkit-animation:cont7 1.8s infinite ease-in-out;

}

.cont7{

position: relative;

top:0;

margin: 80px auto;

animation-delay:0.2s;

-webkit-animation-delay:0.2s;

}

.cont7:before{

content: '';

position: absolute;

left: -50px;

}

.cont7:after{

content: '';

position: absolute;

left: 50px;

animation-delay:0.4s;

-webkit-animation-delay:0.4s;

}

@keyframes cont7{

0%,

80%,

100% {box-shadow: 0 2.5em 0 -1.3em #ffffff; }

40% {box-shadow: 0 2.5em 0 0 #FFF;}

}

@-webkit-keyframes cont7{

0%,

80%,

100% {box-shadow: 0 2.5em 0 -1.3em #ffffff;}

40% {box-shadow: 0 2.5em 0 0 #FFF;}

}</textarea>

</div>

<div class="commom" id="show8">

<textarea readonly="readonly" class="tip" style="border-bottom:1px solid #000;">&lt;div class="cont8 conns"&gt; &lt;/div&gt;</textarea>

<textarea readonly="readonly" class="tipcss">

body{background-color: #000;}

.cont8{

width: 96px;

height: 48px;

border-radius: 50%;

border-bottom:50px solid #fff;

border-top:2px solid #fff;

border-left:2px solid #fff;

border-right:2px solid #fff;

position: relative;

top:0;

margin: 80px auto;

}

.cont8:before{

content: '';

position: absolute;

width: 12px;

height: 12px;

border-radius: 50%;

border: 18px solid #000;

top:21px;

background-color: #fff;

left: 0;

}

.cont8:after{

content: '';

position: absolute;

width: 12px;

height: 12px;

border-radius: 50%;

border: 18px solid #fff;

top:21px;

background-color: #000;

right: 0;

}</textarea>

</div>

<script type="text/javascript" src="jquery-1.11.1.min.js"></script>

<script type="text/javascript" src="show.js"></script>

</body>

</html>

文章来源:

更多信息请查看IT技术专栏

更多信息请查看脚本栏目
手机网站地址:CSS3动态效果学习笔记
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map