【发布时间】:2012-06-17 00:50:13
【问题描述】:
我有一个 div,我可以点击它来拖动它。一旦它在一个区域上,它就会通过以下方式动画到它的位置:
$("#wheel1").animate({left: "200px", top: "100px"});
我也可以让它动画化:
@-webkit-keyframes wheel1 {
0% {
}
100% {
-webkit-transform: translate(200px, 100px);
}
}
区别在于;使用 jQuery,它会从文档左侧动画到 200px。使用 CSS3,它会在你放置它的地方设置 200px 的动画(这很糟糕)
有没有办法像 jQuery 一样让 CSS3 从文档的左上角生成动画?我尝试更改 transform-origin 和其他一些设置,但没有成功。
【问题讨论】:
-
我不知道边距会有什么帮助,jQuery的方式已经很完美了,用CSS3,你如何翻译边距?
-
我不确定您是否正确阅读了该问题。 jQ 可以使用左/右。 jQ 解决方案是可靠的并且有效。不过,我正在尝试通过 CSS 动画实现与 CSS3 完全相同的事情。边距和位置不能用,必须是 translateX/Y
-
这可能是关于上/左/右/下转换(即使在 CSS 中不仅仅是 jQuery)与使用
translate的不同之处的相关链接:http://www.paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/
标签: jquery css jquery-animate css-transforms