Трансформации
Существует несколько базовых трансформаций:
rotate(45deg)
позволяет вращать элемент.scale(2)
масштабирует элемент. Может принимать два параметра, позволяя растягивать элемент или даже отражать его.skew(10deg, 10deg)
наклоняет элемент в одной или двух плоскостях.translate(10px, 20px)
сдвигает элемент по одной или двум осям.matrix(...)
трансформирует элемент согласно матрице преобразований
Есть и другие виды трансформаций. О них рекомендую почитать здесь: MDN: CSS Transforms
Вы можете комбинировать несколько трансформаций. К примеру, можно одновременно сдвинуть и повернуть элемент. ВАЖНО: порядок трансформаций играет роль.
.figure { font-size: 12px; width: 50px; height: 50px; background: var(--accent); color: var(--white-dark); display: flex; align-items: center; justify-content: center; position: absolute; left: 100px; top: 20px; } .border { border: 1px dashed var(--grey); background: transparent; }
<div class="figure border"></div> <div class="figure transform">ABCD</div>
.transform { transform: translate(0px, 100px) rotate(45deg); }
.transform { transform: rotate(45deg) translate(0px, 100px); }
Обратите внимание, что в первом случае фигура была сначала сдвинута на 100px вниз, а затем повёрнута на 45 градусов, а во втором случае — сначала повёрнута на 45 градусов, а затем сдвинута вниз (относительно своего текущего положения в пространстве; то есть "низом" считается низ самой фигуры).