這篇文章主要介紹了關於利用CSS3實現地球自轉,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
CSS3實現地球自轉,不可思議啊,不過確實可以實現,不信的朋友可以祥看本文,附送源碼
最終成果:
素材:兩張圖片,
espaco.jpg(1600*1000)
terra.jpg(900*450)
第一步,形成靜態圖(地球背景全屏,地球大小為450px*450px,地球位置為上下左右置中):
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>Planet Earth</title> <style type="text/css">body{ background: url(espaco.jpg) no-repeat 0 0; background-size: 100%; /* 背景圖片被展開為全屏 */}.earth{ background: url(terra.jpg) repeat-x 0 0; /* 背景圖片在水平方向複製*/ /*下面的屬性可使地球位於瀏覽器視窗垂直水平置中國*/ height: 450px; left: 50%; margin: -225px 0 0 -225px; position: absolute; top: 50%; width: 450px;} </style></head><body> <p class="earth"></p></body></html>
:
第二步,形成圓形地球效果,同時添加月暈效果:
/*在earth中添加以下屬性樣式*/ border: 1px solid rgba(26,18,101,0.3); /*形成圓邊效果,視覺效果更好,不用也行*/ border-radius: 225px; /*使地球形成圓形效果*/ box-shadow: -8px 0 25px rgba(256,256,256,0.3), -1px -2px 14px rgba(256,256,256,0.5) inset; /*形成圓形外面的模糊月暈效果*/
:
第三步,形成白天黑夜效果:
.earth:before{ content: ""; border-radius: 225px; box-shadow: -150px -6px 25px rgba(0,0,0,0.7) inset;/*弧形陰影,形成白天黑夜效果*/ left: 0; position:absolute; top: 0; height: 450px; width: 450px;}
:
最後一步,形成地球自轉效果:
@-webkit-keyframes loop {% { background-position: 0 0; }%{ background-position: -900px 0;} /* 世界地圖的大小為900*450,所以background-position-x: -900px */ } /*在earth中添加如下樣式*/ -webkit-animation: loop 20s linear infinite; /* 這的時間是可以設定的,如果你想地球轉快一點的話,時間改小點就行了,比如10s */
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!