我不知道该怎么办. 我有一个div,它的位置是用JavaScript的内联样式控制的,即:
<div style="transform: translate3d(20px, 40px, 0);"></div>
我有一个通用的"摇"动画如下
.shake{
animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
backface-visibility: hidden;
perspective: 1000px;
transform-origin: center;
}
@keyframes shake {
10%, 90% {
transform: translateX(-2px);
}
20%, 80% {
transform: translateX(4px);
}
30%, 50%, 70% {
transform: translateX(-8px);
}
40%, 60% {
transform: translateX(8px);
}
}
如果我将我的css类应用于div,它会将div重新定位到屏幕的左上角.有没有一种方法可以从动画中添加到现有的转换3D中,也许是使用calc()? 理想情况下,我想做(伪代码)
@keyframes shake {
10%, 90% {
transform: translateX(@current_translate_x - 2px);
}
....