CSS3中的動(dòng)畫(huà)可以為網(wǎng)頁(yè)增添生動(dòng)、有趣的效果,其中順時(shí)針動(dòng)畫(huà)是常用的一種。通過(guò)設(shè)置CSS樣式中的transform屬性,輔以keyframes關(guān)鍵字,就能讓一個(gè)元素圍繞自身中心順時(shí)針旋轉(zhuǎn)。
/* 定義一個(gè)被旋轉(zhuǎn)的元素,如div */ div { /* 設(shè)置元素的寬、高、邊框等 */ width: 100px; height: 100px; border: 1px solid black; /* 配置動(dòng)畫(huà)效果 */ animation-name: rotate; /* 動(dòng)畫(huà)名稱(chēng)為rotate */ animation-duration: 3s; /* 動(dòng)畫(huà)持續(xù)時(shí)間為3秒 */ animation-iteration-count: infinite; /* 無(wú)限循環(huán) */ animation-timing-function: linear; /* 動(dòng)畫(huà)勻速 */ } /* 定義旋轉(zhuǎn)動(dòng)畫(huà),使用@keyframes關(guān)鍵字 */ @keyframes rotate { from { transform: rotate(0deg); /* 元素從0度開(kāi)始旋轉(zhuǎn) */ } to { transform: rotate(360deg); /* 元素旋轉(zhuǎn)一圈后停止 */ } }
上面的代碼中,我們先定義了一個(gè)div元素,其樣式包括寬、高、邊框等。接著,我們?cè)谠撛氐臉邮街信渲昧藙?dòng)畫(huà)效果,包括動(dòng)畫(huà)名稱(chēng)、持續(xù)時(shí)間、循環(huán)次數(shù)和速度曲線。最后,我們使用@keyframes關(guān)鍵字定義了一個(gè)名為"rotate"的動(dòng)畫(huà),當(dāng)元素被應(yīng)用該動(dòng)畫(huà)時(shí)就會(huì)圍繞自身中心順時(shí)針旋轉(zhuǎn)。
需要注意的是,動(dòng)畫(huà)中的"transform: rotate()"屬性決定了旋轉(zhuǎn)的角度,其中的"deg"為角度單位。在定義動(dòng)畫(huà)時(shí),我們可以使用"from"和"to"關(guān)鍵字來(lái)表示動(dòng)畫(huà)的起始和結(jié)束狀態(tài)。例如,上述代碼中的動(dòng)畫(huà)表示:從0度開(kāi)始旋轉(zhuǎn),旋轉(zhuǎn)一圈后停止。
除了使用"from"和"to"外,還可以使用"%"來(lái)表示動(dòng)畫(huà)過(guò)程中的某個(gè)點(diǎn)。例如:
@keyframes rotate { 0% { transform: rotate(0deg); } 50% { transform: rotate(180deg); } 100% { transform: rotate(360deg); } }
上述代碼定義了一個(gè)名為"rotate"的動(dòng)畫(huà),表示元素從0度開(kāi)始旋轉(zhuǎn),到180度時(shí)停止,然后再?gòu)?80度開(kāi)始旋轉(zhuǎn),最終停止在360度。使用"%"來(lái)表示動(dòng)畫(huà)過(guò)程中的某個(gè)點(diǎn)相比使用"from"和"to"更加靈活,可以定制更復(fù)雜的動(dòng)畫(huà)效果。