課程
/前端開發
/HTML/CSS
/數學知識在CSS動畫中的應用
秒針從40秒到50秒,秒針指的方向與表盤的數字不能對其?角度有點超前,請問如何解決?
2015-04-13
源自:數學知識在CSS動畫中的應用 3-1
正在回答
Hi,@Zhong_Yuan 同學你好:
秒針的方向和表盤刻度沒對齊,是因為刻度的CSS樣式有問題,在旋轉時對Y軸上的位置進行了重復設置。
以小時的刻度為例(分鐘刻度的類似):
(1)在JS中繪制小時刻度時,設置了內聯樣式 style="transform:rotate(0deg) translate(80px,-50%)"
其中,translate(80px,-50%) 設置了刻度本身在Y軸方向上以其中心位置垂直居中。
(2)但同時在CSS中又設置了
.line-hour li, .line-min li {
? transform-origin: left center; ?// 設置了基點在Y軸方向上是center(即以Y軸刻度的中心位置處旋轉)
}
此時(1)和(2)同時對Y軸上的位置進行了設置,重復了。導致刻度的繪制有偏差。
解決辦法:
將(2)中的基點設置為刻度的左上角,即 transform-origin: 0 0;?
Y軸上垂直居中就交由(1)translate(80px,-50%)中的 translateY(-50%) 去設定。
修改后的效果見 http://codepen.io/anjia/pen/KwEzwQ
說明:
保留(1)是考慮到當表盤靜止時(即注釋掉 move();)指針依然能和刻度保持垂直對齊。
秒針+角度就可以啦
舉報
在數學理論的基礎上與CSS動畫技巧結合實現酷炫效果
1 回答三個指針走起來都會有鋸齒
3 回答代碼不兼容Ie。我已經加了—ms-等前綴;指針是亂的
2 回答請老師指點計算時鐘數字時的夾角
1 回答為啥有2對重復的數字,沒發現問題,求大神指導一下
1 回答能講解一下 腳本 為什么要用自調用函數嗎,還有引用的是jQuery嗎?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-04-19
Hi,@Zhong_Yuan 同學你好:
秒針的方向和表盤刻度沒對齊,是因為刻度的CSS樣式有問題,在旋轉時對Y軸上的位置進行了重復設置。
以小時的刻度為例(分鐘刻度的類似):
(1)在JS中繪制小時刻度時,設置了內聯樣式 style="transform:rotate(0deg) translate(80px,-50%)"
其中,translate(80px,-50%) 設置了刻度本身在Y軸方向上以其中心位置垂直居中。
(2)但同時在CSS中又設置了
.line-hour li, .line-min li {
? transform-origin: left center; ?// 設置了基點在Y軸方向上是center(即以Y軸刻度的中心位置處旋轉)
}
此時(1)和(2)同時對Y軸上的位置進行了設置,重復了。導致刻度的繪制有偏差。
解決辦法:
將(2)中的基點設置為刻度的左上角,即 transform-origin: 0 0;?
Y軸上垂直居中就交由(1)translate(80px,-50%)中的 translateY(-50%) 去設定。
修改后的效果見 http://codepen.io/anjia/pen/KwEzwQ
說明:
保留(1)是考慮到當表盤靜止時(即注釋掉 move();)指針依然能和刻度保持垂直對齊。
2015-04-13
秒針+角度就可以啦