@Dreamingboy
2017-04-30T09:32:15.000000Z
字数 2684
阅读 969
CSS3
| 属性 | IE | Chrome | Opera | Firefox | Safari |
|---|---|---|---|---|---|
| transition | 10+ | 4.0+ | 3.1+ | 4.0+ | 10.5+ |
其他的浏览器的兼容效果:
语法
transition:[<'transition-property'>||<transition-duration>||<transition-timing-function>||<transiton-delay>,[[<'transition-property'>||<transition-duration>||<transition-timing-function>||<transiton-delay>]],*
transition:background 2s linear 2s,border 2s ease-in 3s;
子属性值之间用空额隔开,多个组合之间使用逗号隔开。
浏览器在解析的时候一般是将第一个表示时间的解析成为transition-duration,第二个时间解析成transition-delay
transition-property表示的是要使用过的的属性,比如background-color,
1、取值
2、样式具备过渡效果的条件
transition-duration设置一个属性过渡到另外一个属性所需要的时间
1、语法
transition-duration:<time>[,<time>]*
1、语法
transition-timing-function:<single-transition-timming-function>[,<single-transition-timing-function>]
2、单一的过渡函数
| 函数 | 功能 |
|---|---|
| ease | 默认值,元素样式从初始状态过渡到终止状态时速度由快到慢,逐渐变慢 |
| linear | 元素样式从处置初始状态过渡到终止状态的速度是恒速 |
| ease-in | 元素从初始状态过渡到终止状态,速度逐渐变快 |
| ease-out | 元元素从初始状态到终止状态先加速后减速 |
3、step()函数
step()函数用于把整个操作领域划分成同样大小的间隔,每个间隔是相等的。
step()函数允许在固定的间隔播放动画
1)语法
steps(<integer>[,[start|end]]?)
包含两个参数
<integer>:指定steps()函数间隔的数量,必须是大于0的正整数定义过渡时间,也就是说触发后经过多长时间过渡才开始。
1、语法
transition-delay:<time>[,<time
参数的取值可以是0、正整数和负整数
负整数:元素的过渡动作从该 时间点开始显示,之前的动作被截断
ransition:width 2s steps(3,start) 0s, height 2s steps(3,start) -2s, background-color 4s steps(3,start) 2s;
以上面这段代码为例,前面的width的变化会直接被截掉,而是直接跳到height变化这个动作。
:hover
常见的是使用@media来实现媒体查询触发
最常见的是使用jQuery脚本实现类名的交换来达到触发多的目的
$(function (){$("#button").click(function(){$(".box").toggleClass("on");});});