Spec-Zone.ru › CSS

CSS-свойство `perspective`

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она поддерживается во всех браузерах с марта 2022 года.

perspective — это свойство CSS, которое определяет расстояние между плоскостью z=0 и пользователем, чтобы придать элементу с 3D-позиционированием перспективу.

Попробуйте

perspective: none;
perspective: 800px;
perspective: 23rem;
perspective: 5.5cm;
<section class="default-example" id="default-example">
  <div class="transition-all" id="example-element">
    <div class="face front">1</div>
    <div class="face back">2</div>
    <div class="face right">3</div>
    <div class="face left">4</div>
    <div class="face top">5</div>
    <div class="face bottom">6</div>
  </div>
</section>
#default-example {
  background: linear-gradient(skyblue, khaki);
  perspective: 800px;
  perspective-origin: 150% 150%;
}

#example-element {
  width: 100px;
  height: 100px;
  perspective: 550px;
  transform-style: preserve-3d;
}

.face {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: absolute;
  backface-visibility: inherit;
  font-size: 60px;
  color: white;
}

.front {
  background: rgb(90 90 90 / 0.7);
  transform: translateZ(50px);
}

.back {
  background: rgb(0 210 0 / 0.7);
  transform: rotateY(180deg) translateZ(50px);
}

.right {
  background: rgb(210 0 0 / 0.7);
  transform: rotateY(90deg) translateZ(50px);
}

.left {
  background: rgb(0 0 210 / 0.7);
  transform: rotateY(-90deg) translateZ(50px);
}

.top {
  background: rgb(210 210 0 / 0.7);
  transform: rotateX(90deg) translateZ(50px);
}

.bottom {
  background: rgb(210 0 210 / 0.7);
  transform: rotateX(-90deg) translateZ(50px);
}

Синтаксис

/* Keyword value */
perspective: none;

/* <length> values */
perspective: 20px;
perspective: 3.5em;

/* Global values */
perspective: inherit;
perspective: initial;
perspective: revert;
perspective: revert-layer;
perspective: unset;

Значения

none
Указывает, что преобразование перспективы не применяется.
<length>
<length>, задающее расстояние от пользователя до плоскости z=0. Оно используется для применения преобразования перспективы к дочерним элементам. Отрицательные значения являются синтаксическими ошибками. Если значение меньше 1px, оно ограничивается значением 1px.

Описание

Каждый 3D-элемент с z>0 становится больше; каждый 3D-элемент с z<0 становится меньше. Сила эффекта определяется значением этого свойства. Большие значения perspective вызывают небольшое преобразование; малые значения perspective вызывают большое преобразование.

Части 3D-элементов, находящиеся позади пользователя — то есть имеющие координаты по оси z больше значения свойства CSS perspective, — не отображаются.

Точка схода по умолчанию располагается в центре элемента, но её положение можно изменить с помощью свойства perspective-origin.

Использование этого свойства со значением, отличным от none, создаёт новый контекст наложения. Кроме того, в этом случае объект будет выступать в качестве содержащего блока для вложенных в него элементов position: fixed.

Формальное определение

Начальное значение none
Применяется к преобразуемым элементам
Наследуется нет
Вычисленное значение абсолютная длина или <code>none</code>
Тип анимации <a href="/en-US/docs/Web/CSS/Reference/Values/length#interpolation" title="Значения CSS-типа данных <length> интерполируются как действительные числа с плавающей точкой.">длина</a>

Формальный синтаксис

perspective = 
  none |
  <length>

Примеры

Настройка перспективы

Пример того, как меняется куб при установке perspective в разных положениях, приведён в разделе Использование CSS-преобразований > Настройка перспективы.

Спецификации

Спецификация
Модуль CSS Transforms, уровень 2
# perspective-property

Совместимость с браузерами

Настольные устройства Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari для iOS Samsung Internet WebView для Android WebView для iOS
perspective
36
12
12
12
16
49Начиная с версии 147, Firefox поддерживает -webkit-perspective с безразмерными значениями для лучшей совместимости.
10
23
15
9
4
36
18
16
49Начиная с версии 147, Firefox для Android поддерживает -webkit-perspective с безразмерными значениями для лучшей совместимости.
10
24
14
9В iOS 13 свойство perspective работало неправильно. Проблемы были исправлены в iOS 14.
2
3.0
1.0
4.4
3
9В iOS 13 свойство perspective работало неправильно. Проблемы были исправлены в iOS 14.
2
none
12
12
10
15
4
18
10
14
3.2
1.0
4.4
3.2

См. также

  • Использование CSS-преобразований

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/perspective

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API