I'm sure you know that the correct answer is "it depends". As a general rule of thumb, it's good practice to use CSS3 transitions and animations if you're animating DOM nodes, or if the animations are simple and well defined. If, on the other hand, you're animating something more complex such as a physics simulator or an online game, it would probably make more sense to use canvas.