Changing some CSS attribute will trigger the browser to synchronously calculate the style and layout, which is a bad thing when you need to animate at 60fps.
DON'T
Animate with left and top trigger layout.
#box {
left: 0;
top: 0;
transition: left 0.5s, top 0.5s;
position: absolute;
...