CSS свойство perspective

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

3D-элемент с z>0 увеличивается, а 3D-элемент с z<0 уменьшается.

Свойство perspective не принимает 0 или отрицательные значения.

Только дочерний элемент имеет вид в перспективе.
Для максимальной совместимости браузера данное свойство используется с расширением -webkit-.
Значение по умолчанию none
Применяется К трансформируемым элементам.
Наследуется Нет
Анимируемое Да. Трансформация перспективы анимируема.
Версия CSS3
DOM синтаксис object.style.perspective = "70px";

Синтаксис

perspective: length | none | initial | inherit;

Пример

<!DOCTYPE html>
<html>
  <head>
    <title>Заголовок документа</title>
    <style>
      .element1 {
      padding: 50px;
      position: absolute;
      border: 1px solid #666;
      background-color: #1c87c9;
      background: #8ebf42; 
      -webkit-transform-style: preserve-3d; /* Safari 3-8  */  
      -webkit-transform: rotateX(40deg); /* Safari 3-8  */
      transform-style: preserve-3d;
      transform: rotateX(40deg);
      }
      .element2 {
      position: relative;
      height: 160px;
      width: 160px;
      margin-left: 20px;
      border: 1px solid #000;
      -webkit-perspective: none; /* Safari 4-8  */
      perspective: none;
    </style>
  </head>
  <body>
    <h2>Пример свойства perspective</h2>
    <h3>perspective: none:</h3>
    <div class="element2">
      Box2
      <div class="element1">Box1</div>
    </div>
  </body>
</html>

Пример, где значение равно 100px:

Пример

<!DOCTYPE html>
<html>
  <head>
    <title>Заголовок документа</title>
    <style>
      .element1 {
      padding: 50px;
      position: absolute;
      border: 1px solid #666;
      background-color: #1c87c9;
      background: #8ebf42; 
      -webkit-transform-style: preserve-3d; /* Safari 3-8  */  
      -webkit-transform: rotateX(40deg); /* Safari 3-8  */
      transform-style: preserve-3d;
      transform: rotateX(40deg);
      }
      .element2 {
      position: relative;
      height: 150px;
      width: 150px;
      margin-left: 50px;
      border: 1px solid #000;
      -webkit-perspective: 100px; /* Safari 4-8  */
      perspective: 100px;
    </style>
  </head>
  <body>
    <h2>Пример свойства perspective</h2>
    <h3>perspective: none:</h3>
    <div class="element2">
      Box2
      <div class="element1">Box1</div>
    </div>
  </body>
</html>

Значения

Значение Описание
length Применяет трансформацию перспективы к элементу и его контенту.
none Не применяет трансформацию перспективы.
initial Устанавливает свойство в значение по умолчанию.
inherit Значение элемента наследуется от родительского элемента.

Поддержка браузера

chrome firefox safari opera
36.0+
12.0-35.0 -webkit-
16.0+
10.0-15.0 -moz-
4.0+
-webkit-
23.0+
15.0-22.0 -webkit-

Практикуйте свои знания

What does the CSS property 'perspective' do?
Считаете ли это полезным?