CSS3 animation-timing-function屬性指定CSS動畫在每個周期的持續(xù)時間內(nèi)應(yīng)如何進行。
下表總結(jié)了此屬性的用法上下文和版本歷史記錄。
| 默認值: | ease |
|---|---|
| 適用于: | 所有元素::before和::after 偽元素 |
| 繼承: | 沒有 |
| 可動畫制作: | 否。請參見 動畫屬性。 |
| 版本: | CSS3的新功能 |
| JavaScript 語法: | object object.style.animationTimingFunction="linear" |
該屬性的語法如下:
animation-timing-function: linear | ease | ease-in | ease-out | ease-in-out | cubic-bezier(n,n,n,n) | initial | inherit
下面的示例演示了如何使用animation-timing-function屬性。
.box {
width: 50px;
height: 50px;
background: red;
position: relative;
/* Chrome, Safari, Opera */
-webkit-animation-name: moveit;
-webkit-animation-duration: 2s;
-webkit-animation-timing-function: ease-in;
animation-name: moveit;
animation-duration: 2s;
animation-timing-function: ease-in;
}
/* Chrome, Safari, Opera */
@-webkit-keyframes moveit {
from {left: 0;}
to {left: 50%;}
}
@keyframes moveit {
from {left: 0;}
to {left: 50%;}
}測試看看?/?下表描述了此屬性的值。
| 值 | 描述 |
|---|---|
| linear | 指定動畫以恒定速度從其初始狀態(tài)進入其最終狀態(tài)。 |
| ease | 與漸入漸出相似,盡管它在開始時加速更快,并且在中間附近已經(jīng)開始減速。 |
| ease-in | 指定動畫開始緩慢,然后逐漸加速直到達到最終狀態(tài)并且動畫突然停止。 |
| ease-out | 指定動畫快速啟動,然后在接近其最終狀態(tài)時逐漸變慢。 |
| ease-in-out | 指定動畫在接近其最終狀態(tài)時開始緩慢,加速然后減速。 |
cubic-bezier(n,n,n,n) | 定義三次貝塞爾曲線。也稱為速度曲線??赡艿闹禐?到1之間的數(shù)值。 |
| initial | 將此屬性設(shè)置為其默認值。 |
| inherit | 如果指定,則關(guān)聯(lián)元素采用其父元素animation-timing-function屬性的計算值。 |
animation-timing-function屬性瀏覽器的兼容性,所有主流瀏覽器均支持該屬性。
|
請參考以下教程:CSS3動畫。
相關(guān)屬性和規(guī)則:animation,animation-name,animation-duration,animation-delay,animation-iteration-count,animation-direction,animation-fill-mode,animation-play-state,@keyframes。