Trong CSS, thuộc tính position
được sử dụng để xác định cách một phần tử được định vị trên trang web. Các giá trị fixed
, absolute
, relative
, và static
đều có các đặc điểm và cách sử dụng riêng. Dưới đây là sự khác nhau giữa các thuộc tính này, cùng với ví dụ minh họa.
position
. Khi một phần tử có position: static
, nó được định vị theo cách thông thường trong dòng chảy của tài liệu.top
, right
, bottom
, và left
không có tác dụng với phần tử có position: static
.Ví dụ:
.box { position: static; /* Mặc định */ width: 100px; height: 100px; background-color: blue; }
position: relative
cho một phần tử, nó sẽ được định vị tương đối so với vị trí ban đầu của nó trong dòng chảy tài liệu.top
, right
, bottom
, và left
để điều chỉnh vị trí của phần tử mà không ảnh hưởng đến vị trí của các phần tử khác.Ví dụ:
.box { position: relative; top: 10px; /* Di chuyển xuống 10px từ vị trí ban đầu */ left: 20px; /* Di chuyển sang trái 20px từ vị trí ban đầu */ width: 100px; height: 100px; background-color: green; }
position: absolute
sẽ được định vị tương đối so với phần tử cha gần nhất có position
khác static
. Nếu không có phần tử cha nào, nó sẽ được định vị so với viewport (cửa sổ trình duyệt).top
, right
, bottom
, và left
có tác dụng để điều chỉnh vị trí của phần tử.Ví dụ:
.parent { position: relative; /* Để phần tử con có thể được định vị tương đối */ } .child { position: absolute; top: 0; /* Định vị ở trên cùng */ left: 0; /* Định vị ở bên trái */ width: 50px; height: 50px; background-color: red; }
position: fixed
được định vị tương đối so với viewport, có nghĩa là nó sẽ không thay đổi vị trí khi bạn cuộn trang.top
, right
, bottom
, và left
để điều chỉnh vị trí.Ví dụ:
.fixed { position: fixed; top: 10px; /* Định vị ở 10px từ trên cùng của viewport */ right: 10px; /* Định vị ở 10px từ bên phải của viewport */ width: 100px; height: 100px; background-color: orange; }
Giá trị Position | Định Vị Tương Đối | Chiếm Không Gian | Ảnh Hưởng Đến Dòng Chảy | Điều Chỉnh Vị Trí |
---|---|---|---|---|
static | Không | Có | Có | Không |
relative | Có | Có | Có | Có |
absolute | Có | Không | Không | Có |
fixed | Có | Không | Không | Có |
Việc hiểu rõ sự khác biệt giữa các thuộc tính position
trong CSS là rất quan trọng để bạn có thể kiểm soát cách mà các phần tử được bố trí và hiển thị trên trang web của mình. Tùy thuộc vào ngữ cảnh và yêu cầu của thiết kế, bạn có thể chọn giá trị position
phù hợp để đạt được kết quả mong muốn.