Internet Explorer 9 以及更早版本的浏览器不支持 transition 属性。
transition是一个简写属性,用于设置四个过度属性
- transition-property
- transition-duration
- transition-timing-function
- transition-delay
值 | 描述 |
---|---|
transition-property | 规定设置过渡效果CSS属性的名称 |
transition-duration | 规定完成过渡效果需要多少秒或毫秒 |
transition-timing-function | 规定速度效果的速度曲线 |
transition-delay | 定义过渡效果什么时候开始 |
注意:始终指定transition-duration属性,否则持续时间为0,transition不会有任何效果。
代码实例
<style>
div
{
width:100px;
height:100px;
background:red;
transition:width 2s;
-webkit-transition:width 2s; /* Safari */
}
div:hover
{
width:300px;
}
</style>
浏览器支持
属性 | Chrome | IE | Firefox | safar | Opera |
---|---|---|---|---|---|
transition | -webkit- | -moz- | -webkit- | -o- |
transition-property
transition-property: none | all | property;
- none:没有属性会获得过渡效果。
- all :所有属性获得过渡效果。
- property:定义应用过渡效果的CSS属性名称列表,列表以逗号分隔。
transition-duration
transition-duration:time;
- time:规定完成过渡效果需要花费的时间(以秒或毫秒计)。默认值是0,意味着不会有效果。
transition-timing-function
此属性允许一个过渡效果,以改变其持续时间的速度。
transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);
值 | 描述 |
---|---|
linear | 规定以相同的速度开始至结束的过渡效果(等于cubic-bezier(0,0,1,1))。 |
ease | 默认;规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。 |
ease-in | 规定以慢速开始的过渡效果(等于 cubic-bezier(0.42,0,1,1))。 |
ease-out | 规定以慢速结束的过渡效果(等于 cubic-bezier(0,0,0.58,1))。 |
ease-in-out | 规定以慢速开始和结束的过渡效果(等于 cubic-bezier(0.42,0,0.58,1))。 |
cubic-bezier(n,n,n,n) | 在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。 |
transition-delay
该属性指定何时开始切换效果
transition-delay:time;(2s 2ms)
指定秒或毫秒数之前要等待切换效果的开始。