首頁 > web前端 > css教學 > 一文講解css3實現橢圓軌跡旋轉(總結)

一文講解css3實現橢圓軌跡旋轉(總結)

奋力向前
發布: 2021-09-16 11:31:01
轉載
5782 人瀏覽過

之前的文章《手把手教你使用Vue2程式碼改成Vue3(圖文詳解)》中,跟大家介紹了怎麼使用Vue2程式碼改成Vue3。以下這篇文章給大家了解css3實作橢圓軌跡旋轉,小夥伴們收藏好哦~

一文講解css3實現橢圓軌跡旋轉(總結)

css3實作橢圓軌跡旋轉

##最近需要實作如下效果

一文講解css3實現橢圓軌跡旋轉(總結)

最開始用

css3D旋轉寫,只能實作如下效果

一文講解css3實現橢圓軌跡旋轉(總結) ##沒辦法把所有的圓轉向正面,不知道是我的操作不對,還是

3d

旋轉無法實現,有知道的大佬還請賜教啊沒法用

3d

實作只能轉向2d了,只要實現按橢圓旋轉就ok了
1、X軸Y軸在一個矩形內移動

路徑為斜線

 .ball {
    animation: 
      animX 2s linear  infinite alternate,
      animY 2s linear  infinite alternate
  }
@keyframes animX{
	  0% {left: 0px;}
	100% {left: 500px;}
}
@keyframes animY{
	  0% {top: 0px;}
	100% {top: 300px;}
}
登入後複製

一文講解css3實現橢圓軌跡旋轉(總結)2、設定動畫延遲

設定Y軸動畫延遲為動畫時長的一半(延遲設為負數動畫一開始不會有延遲空白,有興趣的同學可以試試正數延遲),可以看到運動軌跡變成菱形了,有點感覺了

 .ball {
    animation: 
      animX 2s linear 0s infinite alternate,
      animY 2s linear -1s infinite alternate
  }
登入後複製

一文講解css3實現橢圓軌跡旋轉(總結)3、設定三次貝塞爾曲線

 .ball {
    animation: 
      animX 2s  cubic-bezier(0.36, 0, 0.64, 1) -1s infinite alternate,
      animY 2s cubic-bezier(0.36, 0, 0.64, 1) 0s infinite alternate
  }
登入後複製


一文講解css3實現橢圓軌跡旋轉(總結)#4、縮小放大

為了看起來有立體感添加scale屬性,scale動畫應該是X軸和Y軸的時間總和

 .ball1 {
    animation: 
      animX 2s  cubic-bezier(0.36, 0, 0.64, 1) -1s infinite alternate,
      animY 2s cubic-bezier(0.36, 0, 0.64, 1) 0s infinite alternate,
      scale 4s cubic-bezier(0.36, 0, 0.64, 1) 0s infinite alternate;
  }
 @keyframes scale {

    0% {
      transform: scale(0.7)
    }
    50% {
      transform: scale(1)
    }
    100% {
      transform: scale(0.7)
   }
 }
登入後複製

一文講解css3實現橢圓軌跡旋轉(總結)大功告成!

完整效果位址:https://codepen.io/yaowei9363/pen/PyXvNe?editors=1100

推薦學習:
CSS3影片教學

以上是一文講解css3實現橢圓軌跡旋轉(總結)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:juejin.im
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板