zoukankan      html  css  js  c++  java
  • CSS3 animationtimingfunction steps()

    animation-timging-function 主要是控制css动画从开始到结束的速度。

    linear:线性过渡。等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0)
    ease:平滑过渡。等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0)
    ease-in:由慢到快。等同于贝塞尔曲线(0.42, 0, 1.0, 1.0)
    ease-out:由快到慢。等同于贝塞尔曲线(0, 0, 0.58, 1.0)
    ease-in-out:由慢到快再到慢。等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)
    step-start:等同于 steps(1, start)
    step-end:等同于 steps(1, end)
    steps(<integer>[, [ start | end ] ]?):接受两个参数的步进函数。第一个参数必须为正整数,指定函数的步数。第二个参数取值可以是start或end,指定每一步的值发生变化的时间点。第二个参数是可选的,默认值为end。
    cubic-bezier(<number>, <number>, <number>, <number>):特定的贝塞尔曲线类型,4个数值需在[0, 1]区间内
     

    这里主要介绍steps()

    .heart{
        background-image: url('images/heart-sprite.png');
        -webkit-animation: animate 1s steps(28) infinite;
        animation: animate 1s steps(28) infinite;
    }
    @keyframes animate {
      from {background-position: 0 0;}
      to {background-position: -2800px 0;}
    }

    steps() 设置间隔参数,可以实现分步过渡

    第一个参数指定了时间函数中的间隔数量(必须是正整数)
    第二个参数可选,接受 startend 两个值,指定在每个间隔的起点或是终点发生阶跃变化,默认为 end

    • 浅绿 = 支持
    • 红色 = 不支持
    • 粉色 = 部分支持
    ValuesIEFirefoxChromeSafariOperaiOS SafariAndroid BrowserAndroid Chrome
    Basic Support 6.0-9.0 2.0-4.0 4.0-42.0-webkit- 6.0-8.0-webkit- 15.0-29.0-webkit- 6.0-8.4-webkit- 2.1-3.0-webkit- #1 18.0-42.0-webkit-
    10.0+ 5.0-15.0-moz- 43.0+ 9.0+ 30.0+ 9.0+ 4.0-40.0-webkit-
    16.0+
    1. 在一些场景中会有错误行为
    2. 部分浏览器不支持伪元素动画,或者支持得不够好,尽可能不要利用伪元素来做动画
  • 相关阅读:
    objc之method&class attributes
    iOS之Export UIAutomation script
    js's forin vs oc's forin
    iOS新加速计事件
    Mac之Font管理
    iOS之VoiceOver
    OC之initialize
    C++常见问题
    objc新老runtime接口类型对比
    dlopen之mode参数详解
  • 原文地址:https://www.cnblogs.com/youku/p/7074509.html
Copyright © 2011-2022 走看看