今天来给大家分享一下CSS3 @keyframes 规则!

  在你了解CSS3 @keyframes 规则时我先来给大家说说什么是css3中的动画

  

  动画是使元素从一种样式逐渐变化为另一种样式的效果。

  您可以改变任意多的样式任意多的次数。

  请用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。

  0% 是动画的开始,100% 是动画的完成。

  为了得到最佳的浏览器支持,您应该始终定义 0% 和 100% 选择器。

  当您在 @keyframes 中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。

  通过规定至少以下两项 CSS3 动画属性,即可将动画绑定到选择器:

  • 规定动画的名称
  • 规定动画的时长

  注释:您必须定义动画的名称和时长。如果忽略时长,则动画不会允许,因为默认值是 0。

实例

  1.当动画为 25% 及 50% 时改变背景色,然后当动画 100% 完成时再次改变:

  HTML:

      <div></div>

  CSS: 

    div

    {
    width:100px;
    height:100px;
    background:red;
     animation:myfirst 5s;
     -moz-animation:myfirst 5s; /* Firefox */
    -webkit-animation:myfirst 5s; /* Safari and Chrome */
    -o-animation:myfirst 5s; /* Opera */
    }   @keyframes myfirst
    {
     0% {background:red;}
     25% {background:yellow;}
    50% {background:blue;}
    100%
{background:green;}
    }
    
  2.这个例子是让一个正方形上下楼梯的一个动画效果,有兴趣的可以试试哦!
  
  html:
    <div id="box">
     <div id="div1"></div>
    <div id="div2"></div>
    <div id="div3"></div>
     <div id="div4"></div>
    </div>
  CSS:
    #box{
   position: relative;
  width: 600px;
  height: 600px;
   background: black;
   }
  #div1{
   position: absolute;
  width: 50px;
  height: 50px;
   background: red;
   right: 150px;
  bottom: 0;
  animation:yd 10s linear infinite alternate;
   }
  @keyframes yd { 0%{
transform: translate(0)
}
16%{
transform: translateY(-50px);
}
32%{
transform: translateY(-50px) translateX(50px);
}
48%{
transform: translateY(-100px) translateX(50px);
}
65%{
transform: translateY(-100px) translateX(100px);
}
82% {
transform: translateY(-150px) translateX(100px);
}
100%{
transform: translateY(-150px) translateX(150px);
}
   }
  #div2{
   bottom: 0;
  right: 0;
   position: absolute;
   width: 150px;
   height: 50px;
  background: yellow;
   }
   #div3{
   bottom: 50px;
   right: 0;
   position: absolute;
   width: 100px;
   height: 50px;gei
   background: yellow;
   }
   #div4{
   bottom: 100px;
   right: 0;
   position: absolute;
   width: 50px;
   height: 50px;
   background: yellow;
   } 在此我还给大家列出了 @keyframes 规则和所有动画属性:  
属性 描述 CSS
@keyframes 规定动画。 3
animation 所有动画属性的简写属性,除了 animation-play-state 属性。 3
animation-name 规定 @keyframes 动画的名称。 3
animation-duration 规定动画完成一个周期所花费的秒或毫秒。默认是 0。 3
animation-timing-function 规定动画的速度曲线。默认是 "ease"。 3
animation-delay 规定动画何时开始。默认是 0。 3
animation-iteration-count 规定动画被播放的次数。默认是 1。 3
animation-direction 规定动画是否在下一周期逆向地播放。默认是 "normal"。 3
animation-play-state 规定动画是否正在运行或暂停。默认是 "running"。 3
animation-fill-mode 规定对象动画时间之外的状态。 3

      想要了解更多快来多多关注我!

CSS3 @keyframes 规则的更多相关文章

  1. CSS3 @keyframes 规则以及animation介绍和各种动画样式说明

    一个好网站:http://www.jqhtml.com/ 如需在 CSS3 中创建动画,您需要学习 @keyframes 规则. @keyframes 规则用于创建动画.在 @keyframes 中规 ...

  2. CSS3 @keyframes 动画

    CSS3的@keyframes,它可以取代许多网页动画图像,Flash动画,和JAVAScripts. CSS3的动画属性 下面的表格列出了 @keyframes 规则和所有动画属性: 浏览器支持 表 ...

  3. css3 @keyframes、transform详解与实例

    一.transform 和@keyframes动画的区别: @keyframes动画是循环的,而transform 只执行一遍. 二.@keyframes CSS3中添加的新属性animation是用 ...

  4. animation css3动画与CSS3 @keyframes担配使用创建往复平缓动画

    通过 @keyframes 规则,您能够创建动画. 创建动画的原理是,将一套 CSS 样式逐渐变化为另一套样式. 在动画过程中,您能够多次改变这套 CSS 样式. 以百分比来规定改变发生的时间,或者通 ...

  5. CSS3 @keyframes 用法(简单动画实现)

    定义: 通过 @keyframes 规则,能够创建动画. 创建动画的原理是,将一套 CSS 样式逐渐变化为另一套样式. 在动画过程中,可以多次改变这套 CSS 样式. 以百分比来规定改变发生的时间,或 ...

  6. CSS3 - @keyframes

    语法 @keyframes animationname { keyframes-selector {css-styles;} } 值 描述 animationname 必需.定义动画的名称. keyf ...

  7. css3 @keyframes用法

    使用@keyframes规则,可以创建动画. 在动画的过程中,可以多次更改css样式的设定. 对于指定的变化:发生时用0%,或关键字“from”和“to”,这与0%和100%相同. 0%:开头动画. ...

  8. CSS3 keyframes动画实现弹跳效果

    首先,“回到顶部”.“用户反馈”这两个按钮是通过定位放在左下角上. (1)“回到顶部”的按钮只有当滚动条有出现下滑时才出现 (2)“用户反馈”按钮,用户刚打开时会抖动一下,引起用户的注意,然后才定住. ...

  9. CSS3 @keyframes 语法

    http://www.w3chtml.com/css3/rules/@keyframes.html <!DOCTYPE html><html lang="zh-cn&quo ...

随机推荐

  1. 在myeclipse下安装svn插件,出现了Could not generate DH keypair,这么一个错误。

    解决方法: window-->preferences-->Team-->SVN-->SVN接口 选择:JavaHL 去https://sliksvn.com/download/ ...

  2. System.Data.SqlClient.SqlException (0x80131904): EXECUTE 后的事务计数指示 BEGIN 和 COMMIT 语句的数目不匹配。上一计数 = 1,当前计数 = 0。 EXECUTE 后的事务计数指示 BEGIN 和 COMMIT 语句的数目不匹配。上一计数 = 1,当前计数 = 0。

    EF使用ExecuteSqlCommand(db.Database.ExecuteSqlCommand("exec proc_DeleteCaseInfo_Output @caseID&qu ...

  3. Firefox实用插件记录

    之前总结过一个软件推荐的小文,用来记录一直以来在软件开发过程中遇到的各种实用的软件.后来发现里面越来越多的记录了Firefox的插件,所以今天决定单独抽出一个页面来记录Firefox的插件.因为平时大 ...

  4. 【Objective-C 基础】4.分类和协议

    1.分类 OC提供了一种与众不同的方式--Category,可以动态的为已经存在的类添加新的行为(方法) 这样可以保证类的原始设计规模较小,功能增加时再逐步扩展. 使用Category对类进行扩展时, ...

  5. cd命令使用详解

    cd命令是目录切换命令,是shell内置命令. 语法: cd [-L|-P] [dir] 选项: -p 如果要切换到的目标目录是一个符号连接,直接切换到符号连接指向的目标目录 -L 如果要切换的目标目 ...

  6. Gulp和webpack的区别,是一种工具吗?

    疑问:gulp和webpack 什么关系,是一种东西吗?可以只用gulp,不用webpack吗 或者反过来? 它们的区别和概念 ------------------------------------ ...

  7. BM25和Lucene Default Similarity比较 (原文标题:BM25 vs Lucene Default Similarity)

    原文链接: https://www.elastic.co/blog/found-bm-vs-lucene-default-similarity 原文 By Konrad Beiske 翻译 By 高家 ...

  8. 重庆/北京/江苏KS/快乐时时/七星/福运来菠菜电商开奖修复APP网站SSC网站程序开发php

    网站制作是指使用标识语言(markup language),通过一系列设计.建模.和执行的过程将电子格式的信息通过互联网传输,最终以图形用户界面(GUI)的形式被用户所浏览.简单来说,网页设计的目的就 ...

  9. CATransition 转场动画解析

    http://blog.csdn.net/mad2man/article/details/17260901

  10. nginx 日志分割(简单、全面)

    Nginx 日志分割 因业务需要做了简单的Nginx 日志分割, 第1章 详细配置如下. #建议在mkdir  /home/shell  -p 专门写shell 脚本位置 root@localhost ...