CSS 的動畫效果可以給頁面添加更多的趣味性,比如通過 transform 屬性實現小球沿著橢圓旋轉。下面是具體的代碼實現:
.ball { width: 20px; height: 20px; background-color: #f00; border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: rotate 4s linear infinite; } @keyframes rotate { from { transform: translate(-50%, -50%) rotate(0deg) translateX(200px) rotate(0deg); } to { transform: translate(-50%, -50%) rotate(360deg) translateX(200px) rotate(-360deg); } }
首先,我們創建了一個球類 .ball,并設置了球的基本屬性,包括寬度、高度、背景顏色、圓角等。球的位置使用了絕對定位,并利用 transform 屬性將球的中心點移動到了頁面中心位置。
為了實現橢圓運動,我們通過 transform 屬性的 translateX 和 rotate 屬性來實現球的旋轉和移動。具體地,我們將球從頁面中心位置向右平移 200px,同時設置初始和終止的 rotate 值,使得球先按逆時針方向繞橢圓的右半段旋轉,再沿橢圓的左半段旋轉回來。
最后,我們創建了一個名為 rotate 的關鍵幀,并將它應用到 .ball 類中。這個關鍵幀定義了球的運動軌跡,從初始狀態到終止狀態,球的位置、角度和形狀都發生了變化。設置了一個線性動畫,持續時間為 4s,使得球一直按照該軌跡運動,并實現了一個無限循環的效果。
上一篇css將按鈕向右對齊
下一篇css將圖片往右移動