css властивість transform-origin


Властивість transform-origin змінює положення точки відносно якої елемент трансформується. Для 2D перетворення дозволено змінювати Х та У вісі. Для 3D перетворення дозволено змінювати Z-вісь елемента. Іншими словами, ця властивість дозволяє нам визначати базову позицію для траснформації елементу.

Властивість `transform-origin`

Відлік координат ведеться від лівого верхнього кута елемента, за замовчуванням точка трансформації знаходиться в його центрі. При використанні відсотків вони беруться від розмірів елемента.

автор: Svitlana

Нотатка

Ця властивість використовується разом з властивістю transform.

автор: Svitlana
Нотатка

Зверніть увагу, що ця технологія експериментальна, й може не працювати в деяких браузерах. Синтаксис і поведінка transform-origin може змінюватися у майбутньому.

автор: Svitlana

Синтаксис

transform-origin: x-axis y-axis z-axis|initial|inherit;

Властивість transform-origin може отримувати 5 значень:

x-axis

Зміщення по горизонталі (X вісь).

Дозволено використовувати такі значення:

  • left
  • center
  • right
  • length
  • %
автор: Svitlana

y-axis

Зміщення по вертикалі (Y вісь).

Дозволено використовувати такі значення:

  • left
  • center
  • right
  • length
  • %
автор: Svitlana

z-axis

Зміщення по Z вісі. Дозволено використовувати будь-які одиниці вимірювання довжини прийняті в CSS.

автор: Svitlana

initial

Встановлює властивість у значення без задання

автор: Svitlana

inherit

Вказує на спадковість властивості від свого батьківського елемента.

автор: Svitlana

Значення без задання: 50% 50% 0
Наслідує: Ні
Анімується: Так
JavaScript синтаксис: object.style.transformOrigin="0 0"

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
transform-origin 36.0 <br> 5.0 -webkit- 16.0 <br> 3.5 -moz- 9.0 <br> 4.0 -webkit- 23.0 <br> 15.0 -o- <br> 12.1 <br> 11.5 -o- 12.0 10.0 <br> 9.0 -ms-
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Mozilla Firefox Mobile Apple Safari
transform-origin 2.1 -webkit- 16.0 <br> 3.5 -moz- 9.2 <br> 4.0 -webkit-

Приклади

+ запропонувати свій приклад у пісочниці

Обидва квадрати обертаються однаково, але лівий — навколо власного центру, а правий — навколо точки 20% 40%: тому він «ходить» по колу.

HTML

<div class="wrap"><div class="box center">центр</div></div>
<div class="wrap"><div class="box corner">20% 40%</div></div>

CSS

.wrap {
    display: inline-block;
    margin: 32px;
}

.box {
    width: 90px;
    height: 90px;
    display: grid;
    place-items: center;
    background: #0172ad;
    color: #fff;
    animation: turn 3s linear infinite;
}

.center { transform-origin: center; }
.corner { transform-origin: 20% 40%; }

@keyframes turn {
    to { transform: rotate(360deg); }
}
автор: Svitlana

Динамічний приклад впливу на елемент різних значень властивості

автор: Svitlana

Простий приклад роботи властивості

автор: Svitlana

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід