CSS Layout - The z-index Property

CSS is the language we use to style an HTML document.
CSS describes how HTML elements should be displayed.
This tutorial will teach you CSS from basic to advanced.
Post Reply
Guest

CSS Layout - The z-index Property

Post by Guest »

CSS Layout - The z-index Property


The z-index property specifies the
stack order of an element.

The z-index Property
When elements are positioned, they can overlap other elements.
The z-index property specifies the stack order of an element (which element should be placed in front of, or behind, the others).
An element can have a positive or negative stack order:

This is a heading

Because the image has a z-index of -1, it will be placed behind the text.


Example

img
{
 
position: absolute;
  left: 0px;
 
top: 0px;
 
z-index: -1;
}
Try it Yourself »

Note: z-index only works on positioned elements (position: absolute,
position: relative, position: fixed, or position: sticky) and flex items
(elements that are direct children of display: flex elements).







Another z-index Example

Example
Here we see that an element with greater stack order is always above an element with a lower stack order:

<html><head><style>.container {  position: relative;}
.black-box {  position: relative;  z-index: 1; 
border: 2px solid black;  height: 100px;  margin: 30px;}.gray-box { 
position: absolute;  z-index: 3;  background: lightgray;  height: 60px;  
width: 70%;  left: 50px;  top: 50px;}.green-box {  position: absolute;  z-index: 2;  background: lightgreen; 
width: 35%;  left: 270px;  top: -15px;  height:
100px;}</style></head><body>
<div class="container">  <div
class="black-box">Black box</div>  <div class="gray-box">Gray
box</div>  <div class="green-box">Green box</div></div></body></html>
Try it Yourself »


Without z-index
If two positioned elements overlap each other without a z-index
specified, the element defined last in the HTML code will be shown on top.

Example
Same example as above, but here with no z-index specified:

<html><head><style>.container {  position: relative;}
.black-box {  position: relative; 
border: 2px solid black;  height: 100px;  margin: 30px;}.gray-box { 
position: absolute;  background: lightgray;  height: 60px;  
width: 70%;  left: 50px;  top: 50px;}.green-box {  position: absolute;  background: lightgreen; 
width: 35%;  left: 270px;  top: -15px;  height:
100px;}</style></head><body>
<div class="container">  <div
class="black-box">Black box</div>  <div class="gray-box">Gray
box</div>  <div class="green-box">Green box</div></div></body></html>
Try it Yourself »



Test Yourself With Exercises

Exercise:
Both the header and the paragraph are positioned at the top of the page.
Make sure that the header is placed on top of the paragraph.


<style>
{
position: absolute;
top: 0;
: 1;
}
{
position: absolute;
top: 0;
: 0;
}
</style>

<body>
<h1 id="mytitle">This is a heading</h1>
<p id="myintro">This is a paragraph</p>
</body>



Submit Answer »
Start the Exercise



 CSS Property


Property
Description


z-index
Sets the stack order of an element















+1

Reference: https://www.w3schools.com/css/css_z-index.asp
Post Reply