今天来给大家分享一下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. SQL SERVER大话存储结构(1)_数据页类型及页面指令分析

                如果转载,请注明博文来源: www.cnblogs.com/xinysu/   ,版权归 博客园 苏家小萝卜 所有.望各位支持!          SQLServer的数据页大 ...

  2. jquery的ajax与spring mvc对接注意事项

    昨天一直纠结这么一个问题,应用场景是这样的: 这里登陆是通过jquery的ajax传输数据到后台controller类相应的映射mapping接收.本来是想,在后台验证成功之后返回一个视图modelA ...

  3. Saltstack自动化运维

    Saltstack三大功能 1,远程执行 2,配置管理(状态) 3,云管理 四种运行方式: Local         本地 Minion/Master C/S Syndic  代理模式 Salt S ...

  4. zen coding一个牛的不行的html和css开发工具

    zen coding 是一种仿css选择器的语法来快速开发html和css的开源项目.现已更名为Emmet.可以到github上下载拜读.在这个都想偷懒的世界里,此方法可以极大的缩短开发人员的开发时间 ...

  5. 最新的chart 聊天功能( webpack2 + react + router + redux + scss + nodejs + express + mysql + es6/7)

    请表明转载链接: 我是一个喜欢捣腾的人,没事总喜欢学点新东西,可能现在用不到,但是不保证下一刻用不到. 我一直从事的是依赖angular.js 的web开发,但是我怎么能一直用它呢?看看最近火的一塌糊 ...

  6. 空间索引 - GeoHash算法及其实现优化

    h1,h2,h3,h4,h5,h6,p,blockquote { margin: 0; padding: 0 } body { font-family: "Helvetica Neue&qu ...

  7. sublime Text3 新建文件时定义模块

    开发的过程中有很多的东西,不需要每次编写,如果每次编写这样会很蛋疼,所以sublime 提供了一个牛逼的插件SublimeTmpl, 这个插件可以定义自己新建的模块. sublimeTmpl 安装 1 ...

  8. 【设计模式】单一职责原则(SRP)

    单一职责原则是面向对象原则五大原则中最简单,也是最重要的一个原则, 他的字面定义如下: 单一职责原则(Single Responsibility Principle, SRP): 一个类只负责一个功能 ...

  9. C#超简单方法实现两个richtextbox控件滚动条同步滚动

    此文章属于作者原创,转载请注明,谢谢 有时候我们需要实现对照文章等,往往将文本放到两个richtextbox控件中,但是,如果我们需要同步滚动查看,来达到更好的观看效果. 当然,传统的方法重载控件或者 ...

  10. php.ini 文件中配置的意义注释

    ;;;;;;;;;;;;;;;;;;;; About php.ini   ;  //关于php;;;;;;;;;;;;;;;;;;;; PHP's initialization file, gener ...