zoukankan      html  css  js  c++  java
  • css3 过渡

    过渡(transition)

    通过过渡可以指定一个属性发生变化时的切换方式

    通过过渡可以创建一些非常好的效果,提升用户的体验

    transition-property

    transition-property: 指定要执行过渡的属性

    多个属性间使用 , 隔开
    如果所有属性都需要过渡,则使用 all 关键字,all 是 默认值

    大部分属性都支持过渡效果,注意过渡时必须是从一个有效数值向另外一个有效数值进行过渡

    transition: width, margin;
    transition: all;
    

    transition-duration

    transition-duration: 指定过渡持续的时间

    时间单位:s 和 ms
    1s = 1000ms

    transition-duration: 500ms;
    transition-duration: .5s;
    

    transition-timing-function

    transition-timing-function: 过渡的时序函数

    指定过渡的执行的方式
    可选值:

    • ease 默认值,慢速开始,加速,慢速结束

    • linear 线性,匀速运动

    • ease-in 慢速开始,加速到结束

    • ease-out 加速开始,慢速结束

    • ease-in-out 先加速后减速,和 ease 和细微差别

    • cubic-bezier() 贝塞尔曲线函数

      https://cubic-bezier.com

    • steps() 分步执行过渡效果
      第一个值为 步数

      可以设置第二个值:
      end , 在时间结束时执行过渡(默认值)
      start , 在时间开始时执行过渡

    transition-delay

    transition-delay: 延迟时间

    过渡效果的延迟,等待一段时间后在执行过渡

    transition

    transition:

    可以同时设置过渡相关的所有属性,只有一个要求,如果要写延迟,则两个时间中第一个是持续时间,第二个是延迟。省略的属性都采用默认值。

    .box2{
        background-color: #bfa;
        transition: margin-left 2s 1s cubic-bezier(.24,.95,.82,-0.88);
    }
    .box3{
        background-color: orange;
        transition-property: all;
        transition-timing-function: linear;
        transition-duration: 2s;
        transition-delay: 1s;
    }
    

    效果

    transition

    米兔 练习

    bigtap-mitu-queue-big

    用过度效果对上面的雪碧图实现动画效果

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>米兔</title>
        <style>
            .mitu {
                 132px;
                height: 271px;
                margin: 100px auto;
                background-image: url("https://gitee.com/Liwker/picture/raw/master/img/20210106145912.png");
                background-position: 0 0;
                background-repeat: repeat-x;
    
                /* 通过过度设置动画 */
                transition-property: background-position;
                transition-duration: 3s;
                /* 每3(n-1)步为一个周 */
                transition-timing-function: steps(15 ,end);
            }
            .mitu:hover {
                /* 对图片经过计算,一个周需要移动 -396px */
                background-position: -1980px 0;
            }
    
        </style>
    </head>
    <body>
        <div class="mitu"></div>
    </body>
    </html>
    

    效果

    米兔

  • 相关阅读:
    Building a Space Station POJ
    Networking POJ
    POJ 1251 Jungle Roads
    CodeForces
    CodeForces
    kuangbin专题 专题一 简单搜索 POJ 1426 Find The Multiple
    The Preliminary Contest for ICPC Asia Shenyang 2019 F. Honk's pool
    The Preliminary Contest for ICPC Asia Shenyang 2019 H. Texas hold'em Poker
    The Preliminary Contest for ICPC Asia Xuzhou 2019 E. XKC's basketball team
    robotparser (File Formats) – Python 中文开发手册
  • 原文地址:https://www.cnblogs.com/Liwker/p/14241183.html
Copyright © 2011-2022 走看看