Какие знаешь способы поворота элемента

«Какие знаешь способы поворота элемента» — вопрос из категории CSS, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В CSS есть несколько способов повернуть элемент:

  1. transform: rotate() - основной метод:
.element {
  transform: rotate(45deg); /* поворот на 45 градусов */
}
  1. transform-origin - меняет точку вращения:
.element {
  transform-origin: top left;
  transform: rotate(30deg);
}
  1. rotate в transform (отдельное свойство) - новое синтаксическое упрощение:
.element {
  rotate: 90deg;
}
  1. Анимация поворота:
@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.element {
  animation: spin 2s linear infinite;
}
  1. 3D-поворот:
.element {
  transform: rotateX(45deg) rotateY(30deg);
}

Для SVG можно использовать атрибут transform="rotate(angle, cx, cy)" где cx,cy - центр вращения.