transform
   Baseline  Widely available             
 This feature is well established and works across many devices and browser versions. It’s been available across browsers since сентябрь 2015 г..
CSS-свойство transform позволяет вам поворачивать, масштабировать, наклонять или сдвигать элемент. Оно модифицирует координатное пространство для CSS визуальной форматируемой модели.
Интерактивный пример
transform: matrix(1, 2, 3, 4, 5, 6); transform: translate(120px, 50%); transform: scale(2, 0.5); transform: rotate(0.5turn); transform: skew(30deg, 20deg); transform: scale(0.5) translate(-100%, -100%); <section id="default-example"> <img class="transition-all" id="example-element" src="/shared-assets/images/examples/firefox-logo.svg" width="200" /> </section> Если свойство имеет значение, отличное от none, будет создан контекст наложения. В этом случае, элемент будет действовать как содержащий блок для любых элементов position: fixed; или position: absolute; которые он содержит.
Предупреждение: Только трансформируемый элемент может быть transform. Т.е. все элементы, шаблоны которых регулируются блочной моделью CSS, кроме : неизменяемые инлайновые блоки, блоки таблица-колонка, и блоки таблица-колонка-группа.
Синтаксис
/* Ключевые слова */ transform: none; /* Значения функций */ transform: matrix(1, 2, 3, 4, 5, 6); transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); transform: perspective(17px); transform: rotate(0.5turn); transform: rotate3d(1, 2, 3, 10deg); transform: rotateX(10deg); transform: rotateY(10deg); transform: rotateZ(10deg); transform: translate(12px, 50%); transform: translate3d(12px, 50%, 3em); transform: translateX(2em); transform: translateY(3in); transform: translateZ(2px); transform: scale(2, 0.5); transform: scale3d(2.5, 1.2, 0.3); transform: scaleX(2); transform: scaleY(0.5); transform: scaleZ(0.3); transform: skew(30deg, 20deg); transform: skewX(30deg); transform: skewY(1.07rad); /* Мультифункциональные значения */ transform: translateX(10px) rotate(10deg) translateY(5px); transform: perspective(500px) translate(10px, 0, 20px) rotateY(3deg); /* Глобальные значения */ transform: inherit; transform: initial; transform: unset; Свойство transform может быть указано как значение ключевого слова none или как одно или более значений <transform-function>.
Значения
<transform-function>-  
Одна или более применяемых функций CSS-трансформации. Функции трансформации умножаются в порядке слева направо, что означает, что составное трансформирование эффективнее применять в порядке справа налево.
 none-  
Указывает, что трансформация не должна применяться.
 
Формальный синтаксис
transform =
none |
<transform-list>
<transform-list> =
<transform-function>+
Если perspective() является одним из мультифункциональных значений, оно должно быть указано первым.
Примеры
>HTML
<div>Transformed element</div> CSS
div { border: solid red; transform: translate(30px, 20px) rotate(20deg); width: 140px; height: 60px; } Результат
Для того, чтобы посмотреть другие примеры, обратитесь к Использование CSS-трансформации и <transform-function>.
Accessibility concerns
Scaling/zooming анимации являются проблемой для accessibility, поскольку они становятся частым триггером для определённых типов мигрени. Если вам нужно добавить такие анимации на вашем веб-сайте, вы должны предоставить элемент управления, позволяющий пользователям отключать анимации, предпочтительно для всего сайта.
Кроме того, рассмотрите возможность использования @media-опции prefers-reduced-motion — используйте её для написания медиавыражения, которое отключит анимацию, если пользователь уменьшил анимацию в системных настройках.
Узнать больше:
Спецификации
| Specification | 
|---|
| CSS Transforms Module Level 2> # transform-functions>  |  
| CSS Transforms Module Level 1> # transform-property>  |  
| Scalable Vector Graphics (SVG) 2> # TransformProperty>  |  
| Начальное значение | none | 
|---|---|
| Применяется к | трансформируемые элементы | 
| Наследуется | нет | 
| Проценты | ссылается на размер ограничительной рамки | 
| Обработка значения | как указано, но с относительной длиной, конвертируемой в абсолютные длины | 
| Animation type | трансформация | 
| Создаёт контекст наложения | да | 
Совместимость с браузерами
Loading…