z-index
là một thuộc tính trong CSS được sử dụng để xác định thứ tự xếp chồng của các phần tử trên trang web. Thuộc tính này rất quan trọng khi bạn làm việc với các phần tử có vị trí (positioned elements) như absolute
, relative
, fixed
, hoặc sticky
. Bài viết này sẽ giải thích chi tiết về khái niệm và cách thức hoạt động của z-index
.
z-index
z-index
xác định thứ tự xếp chồng của các phần tử. Các phần tử với z-index
cao hơn sẽ được hiển thị trên các phần tử có z-index
thấp hơn.z-index
: Giá trị của z-index
có thể là một số nguyên dương, số nguyên âm, hoặc không có giá trị nào (có thể hiểu là 0
mặc định). Phần tử có z-index
bằng 1 sẽ nằm trên phần tử có z-index
bằng 0..element { position: relative; /* hoặc absolute, fixed, sticky */ z-index: 10; /* Giá trị z-index */ }
z-index
chỉ hoạt động trong ngữ cảnh xếp chồng của các phần tử. Điều này có nghĩa là:
position
khác static
và có giá trị z-index
khác auto
.z-index
của chúng.<div class="parent"> <div class="child1">Child 1</div> <div class="child2">Child 2</div> </div> <style> .parent { position: relative; z-index: 1; /* Ngữ cảnh xếp chồng */ } .child1 { position: absolute; z-index: 2; /* Sẽ nằm trên child2 */ } .child2 { position: absolute; z-index: 1; /* Sẽ nằm dưới child1 */ } </style>
Trong ví dụ này, child1
sẽ được hiển thị trên child2
mặc dù child2
có z-index
thấp hơn trong ngữ cảnh của .parent
.
z-index
z-index
chỉ có tác dụng trên các phần tử đã được định nghĩa vị trí (positioned elements). Nếu phần tử có position: static
, z-index
sẽ không có tác dụng.z-index
cao hơn trong một ngữ cảnh xếp chồng không nhất thiết phải được hiển thị trên các phần tử có z-index
thấp hơn trong ngữ cảnh khác.z-index
, giá trị mặc định của nó là auto
, có nghĩa là nó sẽ không ảnh hưởng đến việc xếp chồng.z-index
là một thuộc tính quan trọng trong CSS cho phép bạn kiểm soát thứ tự xếp chồng của các phần tử trên trang web. Bằng cách hiểu rõ cách hoạt động của z-index
và ngữ cảnh xếp chồng, bạn có thể dễ dàng quản lý giao diện của trang web một cách hiệu quả và chính xác. Sử dụng z-index
một cách hợp lý sẽ giúp tạo ra trải nghiệm người dùng tốt hơn với các yếu tố trực quan rõ ràng.