css3實現地球自轉程式碼圖文教程
素材:兩張圖片,
espaco.jpg(1600*1000)
terra.jpg(900*450)
第一步,形成靜態圖(地球背景全屏,地球大小為450px*450px,地球位置為上下左右居中):
body{
background: url(espaco.jpg) no-repeat 0 0;
background-size: 100%; /* 背景圖片被拉伸為全屏 */
}
h{
background: url(terra.jpg) repeat-x 0 0; /* 背景圖片在水平方向複製*/
/*下面的屬性可使地球位於瀏覽器視窗垂直水平居中國*/
height: 450px;
left: 50%;
margin: -225px 0 0 -225px;
position: absolute;
top: 50%;
width: 450px;
}
效果圖:
第二步,形成圓形地球效果,同時新增月暈效果:
/*在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; /*形成圓形外面的模糊月暈效果*/
效果圖:
第三步,形成白天黑夜效果:
h: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 */
-
JavaScript陣列去重的四種方法
javascript陣列去重方法彙總ue1=function(){varn=[];//一個新的臨時陣列for(vari=0;i<th;i++)//遍歷當前陣列{//如果當前陣列的第i已經儲存進了臨時陣列,那麼跳過,//否則把當前項push到臨時數組裡面if(xOf(this[i])==-1)(this[i]);}returnn;};ue2=function(){var...
-
javascript設定建立動態表格的方法
兩種JavaScript動態建立table表格的方法,分享給大家,具體實現如下方法一:最原始的方法,建立一一元素vara1=teElement("table");vara2=teElement("tbody");vara3=teElement("tr");vara4=teElement("td");//開始appendchild()追加各個元素ndChild(a4);ndChild(a3);nd...
-
如何理解Javascript的caller,callee,call,apply區別
在提到上述的概念之前,首先想說說javascript中函式的隱含引數:argumentsarguments該物件代表正在執行的函式和呼叫它的函式的引數。[function.]arguments[n]引數function:選項。當前正在執行的Function物件的名字。n:選項。要傳遞給Function物件的從0開始的引數值...
-
如何理解Javascript的caller,callee,call,apply區別
在提到上述的概念之前,首先想說說javascript中函式的隱含引數:argumentsarguments該物件代表正在執行的函式和呼叫它的函式的引數。[function.]arguments[n]引數function:選項。當前正在執行的Function物件的名字。n:選項。要傳遞給Function物件的從0開始的引數值...