通过 transition过渡,我们可以在不使用 Flash 动画或 JavaScript 的情况下,可以给元素从一种样式变换为另一种样式时为它添加效果。它的基本属性有以下几条:
第一:.transition-property : 它的意思是说当我们不想让元素全部实现过渡效果时,可以规定让元素中的某一部分实现 ,可能是它的w或者是h ;
all 是它的默认值,指的是当我们不指定元素的宽高 ,或者其他部分时,会默认实现元素全部的过渡效果。
第二:.transition-duration : 规定元素完成过渡效果需要多少秒或毫秒。
需要添加单位:s (秒) 或者 ms (毫秒)
第三:transition-delay : 定义过渡效果何时开始。正数值时,代表元素将在延迟后开始过渡;负数值时,代表元素开始提前过渡
第四:transition-timing-function : 规定了元素过渡效果实现的速度曲线。通常速度曲线有以下形式:
1. linear 规定以相同速度开始至结束的过渡效果
2.ease(默认值) 规定慢速开始,然后变快,然后慢速结束的过渡效果
3. ease-in 规定以慢速开始的过渡效果
4.ease-out 规定以慢速结束的过渡效果
5.ease-in-out 规定以慢速开始和结束的过渡效果
6.cubic-bezier 在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值
具体的网站可以参考:( http://cubic-bezier.com )
第五: transition的复合写法:
例如:
transition:all 2s linear; √
transition:linear 2s all; √
transition:2s linear all; √
注意:在 transition过渡的复合写法中,没有属性特定的顺序排列。但是有例外的是 :当过渡时间与延迟时间同时存在的时候,就有顺序了,先写的值1是总时间,后写的值2是延迟时间。例如:transition:2s 3s linear all; √ (元素的所有部分将在3秒后开始匀速的实现2秒的过渡效果)