CSS3動畫是在CSS3中引入的一種新特性,可以創建出更加生動、視覺效果更好的動畫效果。其中3D旋轉效果是其中常見的一種效果,下面讓我們來介紹如何實現它。
/*定義元素*/ .box { width: 200px; height: 200px; background-color: #f95; transform-style: preserve-3d; /*保證子元素繼承3D屬性*/ } /*定義動畫*/ @keyframes rotate { 0% { transform: rotate3d(0, 0, 0); } 50% { transform: rotate3d(1, 1, 0, 180deg); } 100% { transform: rotate3d(1, 1, 0, 360deg); } } /*設置動畫效果*/ .box:hover { animation-name: rotate; /*引入動畫*/ animation-duration: 3s; /*動畫時長*/ animation-iteration-count: infinite; /*無限循環*/ animation-timing-function: linear; /*動畫速度*/ }
以上代碼,我們首先定義了一個元素.box,并添加了背景顏色,并設置了transform-style屬性。這個屬性是用來保證子元素可以繼承3D屬性的。接著我們定義了一個名為rotate的動畫,這個動畫實現了旋轉的效果。其中rotate3d函數可以接收4個參數,分別是X、Y、Z軸以及旋轉角度。在50%和100%的位置處,我們分別為元素設置了不同的旋轉角度。最后在:hover的偽類中,我們為元素添加了具體的動畫效果。
有了以上代碼,我們就可以輕松地實現3D旋轉的動畫效果了!
上一篇css3動畫不停止
下一篇css3動畫一秒執行一次