คุณสมบัติ z-index

คุณสมบัติ z-index กำหนดว่า องค์ประกอบใดจะอยู่ด้านบนในกรณีที่องค์ประกอบหลายชิ้น ซ้อนทับกัน

ไวยากรณ์

cssselector {
  z-index: number | auto;
}

ตัวเลขต้องเป็นจำนวนเต็ม บวกหรือ ลบก็ได้ และสามารถเป็นศูนย์ได้

ค่า

ค่า คำอธิบาย
ตัวเลข จำนวนเต็มกำหนดลำดับการซ้อนทับขององค์ประกอบ: เมื่อองค์ประกอบซ้อนทับกัน องค์ประกอบที่อยู่ด้านบน จะเป็นองค์ประกอบที่มีค่า z-index มากกว่า
auto ลำดับการซ้อนทับถูกสร้างขึ้นโดยอัตโนมัติ: องค์ประกอบที่อยู่ด้านบนจะเป็น องค์ประกอบที่อยู่ล่างกว่าในโค้ด HTML

ค่าเริ่มต้น: auto

ตัวอย่าง

ในตัวอย่างนี้ บล็อกจะซ้อนทับกัน ตามลำดับที่ปรากฏในโค้ด HTML (ไม่ได้กำหนด z-index และจะมี ค่าเริ่มต้น - auto) บล็อกแรก จะอยู่ด้านล่างสุด (สีแดง) และบล็อกสุดท้าย จะอยู่ด้านบนสุด (สีเขียว):

html<div id="div1"></div>
<div id="div2"></div>
<div id="div3"></div>
css#div1 {
  position: absolute;
  top: 30px;
  left: 30px;
  width: 50px;
  height: 50px;
  background: red;
}
#div2 {
  position: absolute;
  top: 60px;
  left: 60px;
  width: 50px;
  height: 50px;
  background: blue;
}
#div3 {
  position: absolute;
  top: 90px;
  left: 90px;
  width: 50px;
  height: 50px;
  background: green;
}

Результат:

ตัวอย่าง

มาเปลี่ยนลำดับการซ้อนทับโดยการกำหนด z-index ให้บล็อกสีแดง - 3 สีน้ำเงิน - 2 สีเขียว - 1 ลำดับการซ้อนทับจะเปลี่ยน เป็นแบบย้อนกลับ (บล็อกที่อยู่ด้านบนสุดจะเป็นบล็อกที่มี z-index 3):

html<div id="div1"></div>
<div id="div2"></div>
<div id="div3"></div>
css#div1 {
  position: absolute;
  top: 30px;
  left: 30px;
  width: 50px;
  height: 50px;
  background: red;
  z-index: 3;
}
#div2 {
  position: absolute;
  top: 60px;
  left: 60px;
  width: 50px;
  height: 50px;
  background: blue;
  z-index: 2;
}
#div3 {
  position: absolute;
  top: 90px;
  left: 90px;
  width: 50px;
  height: 50px;
  background: green;
  z-index: 1;
}

Результат: