zoukankan      html  css  js  c++  java
  • CSS3之过渡Transition

     CSS3也有着非常强大的属性,那就是过渡——Transition。过渡——Transition在W3C的描述:“css的transition允许css的属性值在一定
     
    的时间区间内平滑地过渡。这种效果可以在鼠标单击、获得焦点、被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值。
     
    ”既然CSS3的过渡这么强大,下面我们就一点一点掌握它吧。
      CSS3中的过渡Transition有四个中心属性:transition-property、transition-duration、transition-delay和transition-timing-
     
    function。
     
      一、transition-property——指定要运动的样式
     
      1、transition-property的语法
    [css]  
    transition-property :all(所有属性改变) || [attr] (指定要运动的样式)|| none(没有属性改变)  
     
      2、transition-property的属性值
      (1)none:transition马上停止执行
      (2)all:元素产生任何属性值变化时都将执行transition效果
      (3)attr:指定要运动的样式
     
      二、transition-duration
      transition-duration是指定元素转换过程的持续时间,单位为秒(s)。transition-duration可以作用于所有元素,包括:before和:after
     
    伪元素。其默认值是0,也就是变换时是即时的。
     
      三、transition-delay—— 延迟时间
      transition-delay是用来指定一个动画开始执行的时间,也就是说当改变元素属性值后多长时间开始执行transition效果,单位为s(秒)
     
    ,其使用和transition-duration极其相似,也可以作用于所有元素,包括:before和:after伪元素。 默认大小是"0",也就是变换立即执行,
     
    没有延迟。
     
      四、transition-timing-function——指定运动形式
      transition-timing-function : ease(逐渐变慢) | linear(匀速) | ease-in(加速) | ease-out(减速) | ease-in-out(先加速然后减
     
    速) | cubic-bezier(该值允许你去自定义一个时间曲线)(number, number, number, number>)
     
      五、transition的综合写法
    [css]  
    元素选择器{transition:运动的样式 持续时间 运动形式 延迟时间;}  
     
      六、transition的综合兼容写法
     
      1、Mozilla内核
    [css] 
    元素选择器{-moz-transition:运动的样式 持续时间 运动形式 延迟时间;}  
     
      2、Webkit内核
    [css] 
    元素选择器{-webkit-transition:运动的样式 持续时间 运动形式 延迟时间;}  
     
      3、Opera内核
    [css] 
    元素选择器{-o-transition:运动的样式 持续时间 运动形式 延迟时间;}  
     
      4、W3C 标准
    [css] 
    元素选择器{transition:运动的样式 持续时间 运动形式 延迟时间;}  
     
      七、transition的小实例
      
      CSS代码:
    [css]  
    #timings-demo {border: 1px solid #ccc;padding: 10px;height: 400px; 400px;}  
    .box { 100px;height: 50px;line-height: 50px;text-align: center;color: #fff;margin-bottom: 10px;  
        -webkit-border-radius: 5px;  
        -webkit-box-shadow: inset 0 0 5px rgba(102, 153, 0,0.5);  
    }  
    /*逐渐变慢效果:*/          
    #ease {background: #f36;  
        -webkit-transition: all 5s ease 0.3s;  
    }  
    /*加速效果:*/  
    #ease-in {background: #369;  
         -webkit-transition: all 3s ease-in 0.5s;  
    }  
    /*减速效果:*/  
    #ease-out {background: #636;   
        -webkit-transition: all 5s ease-out 0s;  
    }  
    /*先加速然后减速效果:*/  
    #ease-in-out {background: #3e6;  
        -webkit-transition: all 1s ease-in-out 2s;  
    }  
    /*匀速效果:*/  
    #linear { background: #999;  
        -webkit-transition: all 6s linear 0s;  
    }  
    /*该值允许你去自定义一个时间曲线效果:*/  
    #cubic-bezier {background: #6d6;  
        -webkit-transition: all 4s cubic-bezier 1s;  
    }  
    /*hover状态下或单击click按钮后box产生属性变化*/  
    #timings-demo:hover .box {  
        -webkit-transform: rotate(360deg) scale(1.2);  
        -webkit-border-radius: 25px;  
    }  
     
      HTML代码:
    [html]  
    <div id="timings-demo">  
        <div id="ease" class="box">Ease</div>  
        <div id="ease-in" class="box">Ease-in</div>  
        <div id="ease-out" class="box">Ease-out</div>  
        <div id="ease-in-out" class="box">Ease-in-out</div>  
        <div id="linear" class="box">Linear</div>  
        <div id="cubic-bezier" class="box">Cubic-bezier</div>  
    </div>  
     
     
      CSS3之过渡Transition就为大家介绍到这里了,CSS3之过渡Transition的神奇之处远不止上面这些,还可以做很多好玩的小东东。在今后
     
    ,想必CSS3之过渡Transition的应用会很广泛,掌握CSS3之过渡Transition可谓是当务之急呀。更多关于CSS3的东东还望关注本blog有关CSS3
     
    的更新哟。感谢大家长期以来对本blog的支持与厚爱。
     
    转自:http://www.2cto.com/kf/201310/248505.html
  • 相关阅读:
    PAT B1027 打印沙漏 (20 分)
    PAT B1025 反转链表 (25 分)
    PAT B1022 D进制的A+B (20 分)
    PAT B1018 锤子剪刀布 (20 分)
    PAT B1017 A除以B (20 分)
    PAT B1015 德才论 (25 分)
    PAT B1013 数素数 (20 分)
    PAT B1010 一元多项式求导 (25 分)
    HDU 1405 The Last Practice
    HDU 1165 Eddy's research II
  • 原文地址:https://www.cnblogs.com/mengfff/p/4933110.html
Copyright © 2011-2022 走看看