iT邦幫忙

2025 iThome 鐵人賽

DAY 27
0
Modern Web

從0到有做出一個商家網頁系列 第 27

Day27:CSS動畫效果

  • 分享至 

  • xImage
  •  

今天要來學習CSS的動畫效果

1.CSS動畫的種類
使用CSS可以表現兩種動畫效果,包括「轉場動畫」與「關鍵影格動畫」。

(一)轉場動畫
1.定義起點與終點的兩個狀態
2.需要啟動動畫的觸發器
3.只會播放一次

(二)關鍵影格動畫
1.在起點與終點之間建立多個關鍵影格
2.即使沒有觸發器,也可以開始播放影片
3.可以設定迴圈次數與播放方法

2.使用CSS屬性製作轉場動畫
(一)與套用轉場效果有關的屬性
1.transition-property:~;:這是設定套用效果的CSS屬性,在值輸入任意屬性名稱或all。
2.transition-duration:~;:這是設定效果所需時間的屬性,在值輸入秒數或毫秒數。
3.transition-delay:~;:這是設定效果開始為止的延遲時間的屬性,在值輸入秒數或毫秒數。
4.transition-timing-function:~;:這是設定變化方式的屬性,在值設定關鍵字或函數型的值。

(二)在表單的「Send」按鈕上加上動畫效果
針對「滑鼠移入按鈕」的選擇器,要設定為input[type="submit"]:hover,包含屬性選擇器與虛擬類別的組合,接著設定動畫的狀態(要改變背景色、往右偏移),接著把要套用transitsion的CSS屬性名稱(background-color與margin-left)設定為transition-property,同時也要設定其他三個transition相關屬性。

input[type="submit"]:hover{
    background-color: #c7887f;      (1)改變背景色
margin-left: 20px;                  (2)往右偏移
transition-property: background-color,margin-left;  以(1)背景色與(2)往右偏移為對象
transition-duration: 300ms;              0.3秒之內
transition-timing-function: ease-in;     開始時緩慢,結束時快速
transition-delay: 0ms;                   沒有延遲
} 

(三)轉場動畫的設定方式
簡寫的寫法:
transition: all 300ms ease-in 100ms;

1.all:transition-property 哪個屬性會被轉場影響
2.300ms:transition-duration 花多少時間轉場
3.ease-in:transition-timing-function 如何轉場
4.100ms:transition-delay 延遲多久後開始

transition-timing-function的關鍵字

1.ease:慢慢開始
2.liner:以一定速度變化
3.ease-in:慢慢開始,快速結束
4.ease-out:快速開始,慢慢結束
5.ease-in-out:慢慢開始,中間加速,再慢慢結束

今天先到這邊明天再繼續!


上一篇
Day26:繼續學習新的CSS語法
下一篇
Day28:使用CSS屬性製作關鍵影格動畫
系列文
從0到有做出一個商家網頁30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言