Image Image Image Image Image Image Image Image Image Image

Блог Indigo | 18.04.2024

Наверх

Наверх

Функция rotate() свойства transform позволяет вращать элемент в 2D-пространстве. В скобках задается угол от 0 до 360 градусов. К числу дописывается приставка deg. Пример:

transform: rotate(90deg); /* поворот элемента на 90° по часовой стрелке */
/* не забудьте про вендорные префиксы */

Если указано положительное число, поворот происходит по часовой стрелке, если отрицательное — против часовой. Если установлено значение 0deg, элемент останется в исходном положении. 360deg означает, что элемент совершит один полный оборот по часовой стрелке, 1080deg — три полных оборота, -720deg — два полных оборота против часовой стрелки и т. д.

Использовать полные обороты имеет смысл только в анимации. В противном случае какой-либо эффект от поворота будет незаметен, поскольку он будет происходить мгновенно и незаметно для глаз. Как оживить элемент, заставляя его вращаться плавно, будет показано далее в книге.

А пока несколько примеров статичных элементов, трансформированных с использованием функции вращения rotate():

CSS3 transform rotate

Функции для каждой оси

Свойство transform поддерживает дополнительные функции, которые позволяют совершать трансформации относительно осей трехмерного пространства:

  • rotateX() — поворот элемента по оси X;
  • rotateY() — поворот по оси Y;
  • rotateZ() — поворот элемента по оси Z.
CSS3 transform rotateX rotateY rotateZ

Точка вращения

Изначально поворот элемента происходит относительно его центральной оси. Но центр вращения можно изменить, воспользовавшись свойством transform-origin. В качестве значения указываются координаты для трех осей — X, Y и Z.

Единицы измерения для X и Y могут быть любыми. Также принимаются ключевые слова left, center, right (для X) и top, center, bottom (для Y). Для оси Z позволительно использовать корректные единицы измерения длины, кроме процентов.

По умолчанию настройки transform-origin следующие:

transform-origin: 50% 50% 0; /* x y z */

Данное свойство также требует использования префиксов производителей.


Далее в учебнике: функция масштабирования scale().