While building the React Handbook landing page, I had to search how to rotate an image. I wanted to rotate an SVG image, but this works for any image type. Or any HTML element, actually.

Simply add this CSS instruction to the element you want to rotate:

animation: rotation 2s infinite linear;

You can also choose to add a rotate class to an element, instead of targeting it directly:

.rotate {
  animation: rotation 2s infinite linear;

tweak the 2s to slow down of speed up the rotation period.

Then add this line, outside of any selector:

@keyframes rotation {
  from {
    transform: rotate(0deg);
  to {
    transform: rotate(359deg);

That’s it! Your elements should now rotate.

Check out the CSS Animations and CSS Transitions guides

Here is the result shown in Codepen:

See the Pen How to use CSS Animations to continuously rotate an image by Flavio Copes (@flaviocopes) on CodePen.