我試圖使用CSS3轉換爲DIV設置動畫效果。該示例DIV是:CSS轉換:在平移左邊緣的同時修復div的右邊緣位置
HTML:
<div class="element"></div>
CSS:
.element {
-webkit-transform: translate3d(0,0,0);
-webkit-transition: -webkit-transform 2s linear, width 2s linear;
position: absolute;
left: 100px; top: 100px;
height: 10px; width: 50px;
background-color: black;
}
這意味着DIV在其容器佔據的區域從(100像素,100像素)至(150像素,110px) - 右邊緣固定在150px。
我想在DIV到150像素維持一個靜態的右邊緣,而我翻譯關閉屏幕左邊緣,所以我一直在申請(通過JavaScript)的過渡類的DIV像這樣:
CSS:
.transition {
-webkit-transform: translate3d(-200px, 0, 0);
width: 150px;
}
是我看到的問題是,在寬度的過渡不與翻譯DIV的左邊緣跟上,所以不是在大小和左側位置均勻增加,右邊緣當DIV以不同的速率滑落時,位置波動,稍微閃爍(取決於平臺有多少閃爍)。
移動Safari(iPhone上的Phonegap webview是我的主要開發平臺)上發生的問題更爲生動,而不是在Chrome上。
我已經把一個JSFiddle放在http://jsfiddle.net/XwuBz/上,它演示了它(在iPhone上查看它以查看它的發生)。
是否有另一種方法來實現這一最終結果?
由於提前,
丹