CSS3之Transition(变换过渡)

知道了CSS3三剑客之一的transform可以用来让原本规规矩矩的元素产生变形,平移,旋转一样的旋转,接下来使用第二个特性,transition属性,增加变化过程中的过渡效果。

并不能继承给子类型

Transition允许CSS的属性值在一定的时间区间内平滑地过渡。这种效果可以在鼠标单击、获得焦点、被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值,它的语法如下:

transition: property duration timing-function delay;
/*
property:执行过渡的属性
duration:执行过渡的持续时间
timing-function:执行过渡的速率模式
delay:延时多久执行
*/

transition-property

可取值:

  • none
    没有属性会获得过渡效果。
  • all
    所有属性都将获得过渡效果。
  • property
    定义应用过渡效果的 CSS 属性名称列表,列表以逗号分隔。
div{
transition-property:width;
-moz-transition-property: width;/* Firefox 4 */
-webkit-transition-property:width; /* Safari 和 Chrome */
-o-transition-property:width; 
/* Opera */}

transition-duration

参数为时间,单位为s(秒)或者ms(毫秒),默认就是0,回想一下如果只有transform属性,是不是变换啪地一下完成了。

div{
transition-duration: 5s;
-moz-transition-duration: 5s; /* Firefox 4 */
-webkit-transition-duration: 5s; /* Safari 和 Chrome */
-o-transition-duration: 5s; /* Opera */}

transition-timing-function

既然是动画,那么就有动画的运行速率,不同的速度会产生不同的结果,以下是可取值。

  1. ease:(逐渐变慢)默认值,ease函数等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0).
  2. linear:(匀速),linear 函数等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0).
  3. ease-in:(加速),ease-in 函数等同于贝塞尔曲线(0.42, 0, 1.0, 1.0).
  4. ease-out:(减速),ease-out 函数等同于贝塞尔曲线(0, 0, 0.58, 1.0).
  5. ease-in-out:(加速然后减速),ease-in-out 函数等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)
速率示意图

transition-delay

参数为时间,单位为s(秒)或者ms(毫秒),默认就是0,也就是立即执行,如果在多个动画直接有先后顺序,那么它就会派上用场。

把它们写在一起

浏览器内核的前缀不能忘啊,使用emmet神器来帮助你。
emmet使用如图所示:

-webkit-transition: all 0.5s ease-in-out 0s;
-o-transition: all 0.5s ease-in-out 0s;
transition: all 0.5s ease-in-out 0s;
如图所示

将它们放在一起的效果如下,可以很明显的发现它们之间的不同。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • W3C标准中对css3的transition这是样描述的:“css的transition允许css的属性值在一定的...
    青春前行阅读 1,432评论 0 5
  • http://www.jianshu.com/p/5354a9042a2a
    Eenmaal_7a01阅读 235评论 0 0
  • 一、过渡(Transition) −允许css的属性值在一定的时间区间内平滑地过渡(一个元素从一种表现形态到另一种...
    越IT阅读 1,082评论 0 0
  • 上一篇介绍了CSS3里transform变形属性,本篇介绍另一个人气动画属性transition。transiti...
    张歆琳阅读 25,061评论 1 31
  • 亲爱的简书: 可知道,这信是为你而写? 可知道,虽谋面不久,却似曾相识,故心心念念要将真挚的情愫说给你听? 为什么...
    布谷鸟唐山阅读 324评论 0 5