小編給大家分享一下如何利用CSS3動畫實(shí)現(xiàn)圓形動態(tài)時(shí)鐘,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)公司主要從事網(wǎng)站制作、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)紅橋,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792
什么是動畫?這是我們應(yīng)該先了解的問題。按照百度百科的解釋動畫是采用逐幀拍攝對象并連續(xù)播放而形成運(yùn)動的影像技術(shù)。不論拍攝對象是什么,只要它的拍攝方式是采用的逐格方式,觀看時(shí)連續(xù)播放形成了活動影像,它就是動畫。放在 CSS3 中大致可以理解為使元素從一種樣式逐漸變?yōu)榱硪环N樣式,即將多個(gè)過渡效果放在一起形成的效果。CSS3 動畫是通過 "關(guān)鍵幀",來控制動畫的每一步。這里又有一個(gè)問題,什么是關(guān)鍵幀?我理解為定義動畫執(zhí)行的時(shí)間點(diǎn)和在該時(shí)間點(diǎn)上的樣式是什么。
先給大家展示效果圖:
通過 CSS3 動畫繪制動態(tài)時(shí)鐘的步驟
定義頁面布局和樣式
定義關(guān)鍵幀
定義頁面布局和樣式
定義關(guān)鍵幀
調(diào)用動畫實(shí)現(xiàn)動態(tài)效果調(diào)用動畫實(shí)現(xiàn)動態(tài)效果
注意點(diǎn)
在分針和秒針進(jìn)行旋轉(zhuǎn)時(shí)要保證是勻速旋轉(zhuǎn),即 transform-timing-function 速度曲線的值為 linear
在分針和秒針進(jìn)行旋轉(zhuǎn)時(shí)要保證旋轉(zhuǎn)原點(diǎn)的位置,即 transform-origin 的值要為 center、bottom(也可以利用像素和百分比進(jìn)行改變)
分針和秒針進(jìn)行旋轉(zhuǎn)的速度要區(qū)分
以下是 HTML 源碼
clock
以下是 CSS3 源碼
#main { width: 300px; height: 300px; border: 5px solid #0881A3; border-radius: 50%; margin: 50px auto 0; position: relative;/*定義表盤樣式*/ } #second { width: 5px; height: 120px; background: #393E46; position: absolute; top: 30px; left: 150px; transform-origin: center bottom; animation: second 60s linear infinite;/*定義秒針樣式和動態(tài)效果*/ } #minute { width: 10px; height: 80px; background: #40A798; position: absolute; top: 70px; left: 147px; transform-origin: center bottom; animation: minute 3600s linear infinite;/*定義分針樣式和動態(tài)效果*/ } @keyframes second { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }/*定義秒針過渡效果*/ @keyframes minute { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }/*定義分針過渡效果*/
看完了這篇文章,相信你對“如何利用CSS3動畫實(shí)現(xiàn)圓形動態(tài)時(shí)鐘”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!