Open In App

CSS perspective Property

Last Updated : 03 Aug, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

CSS perspective property is used to give perspective to 3D objects. Perspective is the representation of 3D objects on a 2D plane to give the appearance depth and distance in relation to each other.  When defining the perspective property, the child element gets perspective, not the parent element. So, the value defines how close the child is from the Z plane.

Each 3D element becomes larger if the z is greater than 0 & each 3D element becomes smaller if the z is less than 0. The strength of the effect can be determined by the perspective property value. Large values of perspective can produce a small transformation & small values of perspective can produce a large transformation. The portion of the 3D elements which is behind the user i.e. if their z-axis coordinates are greater than the perspective CSS property value then it will not possible to drawn. By default, the fade point is placed at the element’s center position, although we can change its position using the perspective-origin property. By using perspective property having other than none value, can creates a new stacking context.

Syntax:

perspective: length| none| initial| inherit;

Property values: All the properties are described well with the example below.

length: length property is used to sets the distance of child element from viewer to Z plane. So, the smaller the value, the more splendid image is formed.

Syntax:

perspective: length;

Example: This example illustrates the use of the perspective property where length value is set to 200px.

HTML




<!DOCTYPE html>
<html>
   
<head>
    <title> CSS perspective Property </title>
    <style>
    .class1 {
        margin-top: 20px;
        margin-left: 40px;
        height: 200px;
        width: 200px;
        color: #0F9D58;
        border: 1px solid;
        perspective: 200px; /*length value of perspective property*/
    }
     
    .class2 {
        padding: 60px;
        border: 2px solid;
        background: #0F9D58;
        color: white;
        transform: rotateX(45deg) rotateY(45deg);
    }
    </style>
</head>
 
<body>
    <div class="class1">GeeksforGeeks
        <div class="class2">GeeksforGeeks</div>
    </div>
</body>
   
</html>


Output:

none: It is the default value. It indicates no perspective is set. none is equivalent to 0px.

Syntax:

perspective: none;

Example: This example illustrates the use of the perspective property where the property value is set to none.

HTML




<!DOCTYPE html>
<html>
   
<head>
    <title> CSS perspective Property </title>
    <style>
    .class1 {
        margin-top: 20px;
        margin-left: 40px;
        height: 200px;
        width: 200px;
        color: #0F9D58;
        border: 1px solid;
         
        /*none value of perspective property*/
        perspective: none;
    }
     
    .class2 {
        padding: 60px;
        border: 2px solid;
        background: #0F9D58;
        color: white;
        transform: rotateX(45deg) rotateY(45deg);
    }
    </style>
</head>
 
<body>
    <div class="class1">GeeksforGeeks
        <div class="class2">GeeksforGeeks</div>
    </div>
</body>
   
</html>


Output:

initial: It is used to set an element’s CSS property to its default value i.e., initial sets the default value. There is no perspective is set.

Syntax:

perspective: initial;

Example: This example illustrates the use of the perspective property where the property value is set to initial.

HTML




<!DOCTYPE html>
<html>
   
<head>
    <title> CSS | perspective Property </title>
    <style>
    .class1 {
        margin-top: 20px;
        margin-left: 40px;
        height: 200px;
        width: 200px;
        color: #0F9D58;
        border: 1px solid;
         
        /*initial value of perspective property*/
        perspective: initial;
    }
     
    .class2 {
        padding: 60px;
        border: 2px solid;
        background: #0F9D58;
        color: white;
        transform: rotateX(45deg) rotateY(45deg);
    }
    </style>
</head>
 
<body>
    <div class="class1">
          GeeksforGeeks
        <div class="class2">GeeksforGeeks</div>
    </div>
</body>
   
</html>


Output:

inherit: It is used to inherit a property to an element from its parent element property value ie., inherit receives the property from the parent element. When it is used with the root element then the initial property will be used.

Syntax:

perspective: inherit;

Example: This example illustrates the use of the perspective property where the property value is set to inherit.

HTML




<!DOCTYPE html>
<html>
   
<head>
    <title> CSS perspective Property </title>
    <style>
    .class0 {
        perspective: 150px;
    }
     
    .class1 {
        margin-top: 20px;
        margin-left: 40px;
        height: 200px;
        width: 200px;
        color: #0F9D58;
        border: 1px solid;
         
        /*inherit value of perspective property*/
        perspective: inherit;
    }
     
    .class2 {
        padding: 60px;
        border: 2px solid;
        background: #0F9D58;
        color: white;
        transform: rotateX(45deg) rotateY(45deg);
    }
    </style>
</head>
 
<body>
    <div class="class0">
        <div class="class1">GeeksforGeeks
            <div class="class2">GeeksforGeeks</div>
        </div>
    </div>
</body>
   
</html>


Output:

Supported Browsers: The browsers supported by perspective Property are listed below: 

  • Google Chrome 36.0
  • Microsoft Edge 12.0
  • Firefox 16.0
  • Opera 23.0
  • Safari 9.0


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads