22_Трансформация в CSS

Содержание

Слайд 3

Отдельное свойство CSS, которое мы ещё не рассматривали. Трансформация преобразует существующий HTML

Отдельное свойство CSS, которое мы ещё не рассматривали. Трансформация преобразует существующий HTML
элемент на основе одной или нескольких выбранных функций. Трансформации бывают 2D и 3D.
Для применения трансформации используется свойство transform.
Применение трансформаций не влияет на поток.

Слайд 4

Сдвигает элемент на определенное расстояние по двум осям.
Значение задается в px и

Сдвигает элемент на определенное расстояние по двум осям. Значение задается в px
в %. Проценты рассчитываются по размерам блока.
Если указывать только одно значение, сдвиг будет по оси x.
Отрицательные значения сдвинут в обратную сторону
transform: translate(-50%, 20px)

Слайд 5

Сдвиг только по осям X и Y соответственно.
Значения аналогичны translate

Сдвиг только по осям X и Y соответственно. Значения аналогичны translate

Слайд 6

Масштабирование элементов по осям x и y.
Значения задаются в долях.
При указании только

Масштабирование элементов по осям x и y. Значения задаются в долях. При
одного значения коэффициент масштабирования применяется ко всем осям целиком.
Доступны функции scaleX и scaleY для масштабирования только по одной оси.
Отрицательные значения отразят элемент зеркально.
transform: scale(-1.5, 0.5)

Слайд 7

Поворачивает элемент на определенный угол по часовой стрелке. Угол задаётся в градусах,

Поворачивает элемент на определенный угол по часовой стрелке. Угол задаётся в градусах,
с помощью deg
Отрицательные значения повернут элемент против часовой стрелки.
transform: rotate(-20deg)

Слайд 8

Наклоняет элемент на угол вдоль двух осей. Значения указываются в градусах (deg).

Наклоняет элемент на угол вдоль двух осей. Значения указываются в градусах (deg).

Указание одного значения наклонит элемент вдоль оси X.
skewX и skewY наклонят элемент вдоль конкретной оси.
transform: skew(-20deg, -20deg)

Слайд 9

Комбинирование всех способов.
matrix( scaleX(), skewY(), skewX(), scaleY(), translateX(), translateY() )
Все значения задаются

Комбинирование всех способов. matrix( scaleX(), skewY(), skewX(), scaleY(), translateX(), translateY() ) Все
в долях, tx и ty. Для последних двух единицы измерения не указываются.
transform: matrix(1, 0, 0, 1, -100, 0);

Слайд 10

Изменение центра трансформации.
Задаётся значениями в процентах или пикселях (сначала по X, потом

Изменение центра трансформации. Задаётся значениями в процентах или пикселях (сначала по X,
по Y), либо ключевыми словами top, bottom, left, right, center.
transform-origin: 200px 100px;

Слайд 11

Функции трансформации можно перечислять через пробел в порядке появления.

Функции трансформации можно перечислять через пробел в порядке появления.

Слайд 13

Свойство, которое указывается в какой плоскости будут происходить трансформации. Значение flat означает

Свойство, которое указывается в какой плоскости будут происходить трансформации. Значение flat означает
плоские, двумерные трансформации, а значение preserve-3d включит трехмерную трансформацию
transform-style: preserve-3d;
Свойство устанавливается для родительского элемента!
Важное замечание: некоторые из свойств (overflow и opacity, например) в значениях, отличных от значения по умолчанию, предотвращают трехмерную трансформацию.

Слайд 14

Включает перспективу для дочерних элементов, добавляя ощущение 3-мерного пространства.
.container {
perspective: 200px;

Включает перспективу для дочерних элементов, добавляя ощущение 3-мерного пространства. .container { perspective:
transform-style: preserve-3d;
}
Свойство устанавливается для родительского элемента!

Слайд 15

Устанавливает точку перспективы. По умолчанию точка находится в центре, значения можно установить

Устанавливает точку перспективы. По умолчанию точка находится в центре, значения можно установить
аналогичным образом, как и в background-position.
perspective-origin: 0% 100%;

Слайд 17

Сдвиг по 3 осям.
Существуют отдельные функции translateX, translateY, translateZ

Сдвиг по 3 осям. Существуют отдельные функции translateX, translateY, translateZ

Слайд 18

Масштабирование по 3 осям.
Аналогично есть отдельные функции масштабирования по каждой оси scaleX,

Масштабирование по 3 осям. Аналогично есть отдельные функции масштабирования по каждой оси scaleX, scaleY, scaleZ
scaleY, scaleZ

Слайд 19

Поворот на угол по вектору, заданному тремя точками. Точки задаются в долях.
Для

Поворот на угол по вектору, заданному тремя точками. Точки задаются в долях.
поворота по отдельным осям есть функции rotateX, rotateY, rotateZ.

Слайд 20

Добавление перспективы для одного элемента.

Добавление перспективы для одного элемента.

Слайд 21

Отображения обратной части. По умолчанию отображается как зеркальное отражение поверхности, но со

Отображения обратной части. По умолчанию отображается как зеркальное отражение поверхности, но со
значением hidden обратная часть скрывается.