制作一個簡單的旋轉的地球儀!


這期我們來一起探討如何用線條勾勒出一個簡單的地球儀。廢話不多說動手!!!

想要用線條勾勒出一個簡單的地球儀,首先我們就得想到如何形成一個線條。這邊我分享一下我的方法(用邊框)

 

然后使用border-radius這個屬性,讓一個正方形的邊框變成一個圓形這樣的話,我們就可以進行下一步動作了。

注意:這邊的容器不要設置背景顏色就讓他單獨形成一個圓形。效果圖如下:

 

 這邊你會看打這個球形為什么會和平常看到的不一樣,這個問題問的非常好。因為我給他加了旋轉屬性rotate。

首先我們要先通過transform-style: preserve-3d;這個屬性讓div變成一個3d舞台然后在設置transform:rotateX()屬性和transform:rotateY()屬性來實現他的翻轉。

我這邊是這樣設置的:

 

 接下來我們就要思考一個問題了,實現一個地球儀要多少個這樣的線條,沒錯就是18條。經度需要9條,緯度需要9條。當然你也可以設置6條這邊就看你個人愛好。

 

 先設置9條繞着X軸旋轉的,然后在設置9條繞着Y軸旋轉的。這樣就以來地球儀基本就做好了如圖:

 

 是不是感覺有點字小帥就和我一樣。然后接下來我們就要實現讓他自動轉起來。

首先我們需要制定一個關鍵幀。這邊我是這樣制定的:

 

 要用到@keyframes 這個屬性后面接的是這個關鍵幀的名稱(zhuan)0%的意思是開始狀態,然后100%是結束狀態。我寫的意思就是讓這個球繞着Z軸轉一圈。就猶如地球儀轉一圈一樣。

然后我們做到這里幾乎就完成了制作了完成了,現在就差最后一步了,就是調用這個關鍵幀。用到animation這個屬性。

 

 animation屬性它的屬性值就比較多了 不過常用的就是幾種,上述的是合並寫法,屬性值用空格隔開。

第一個值就是調用的關鍵幀的名稱了,然后呢第二個值就是 完成這個關鍵幀所需要的時間(我這邊設置的是十秒),第三個值就是這個動畫執行的類型linear也是常用到的類型,指的是勻速。

然后最后一個值的意思是infinite無限循環。好了做到這里就做完了。點擊運行你會發現。

就是這樣沒錯,不過你得腦補他是在繞着Z軸轉動的。希望你能理解!

這一期就和大家分享這么點了,下期再見!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM