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)
指定秒或毫秒數之前要等待切換效果的開始。