Thuộc tính position quy định các loại phương pháp định vị được sử dụng cho một phần tử
Có năm giá trị vị trí khác nhau:
- static
- relative
- fixed
- absolute
- sticky
Các thuộc tính trên chỉ hoạt động khi thuộc tính position được cài đặt từ trước. Chúng cũng hoạt động khác nhau tùy thuộc vào giá trị vị trí
1. Thuộc tính position: static;
Một phần tử với position: static; không được định vị theo bất kỳ cách đặc biệt nào; nó luôn được định vị theo dòng bình thường của trang
Các phần tử HTML được xem nó là giá trị mặc định
Các phần tử đã được ở vị trí tĩnh sẽ không bị ảnh hưởng bởi các thuộc tính top(phía trên), bottom(phía dưới), left(bên trái), right(bên phải)
Ví dụ:
2. Thuộc tính position: relative;
Thuộc tính position: relative; trong CSS giúp định vị trí bình thường cho các thành phần
Nếu bạn sử dụng thuộc tính này thì sẽ phải sử dụng kèm theo với các thuộc tính căn chỉnh tọa độ của thành phần (lưu ý: các giá trị của các thẻ này là chính là đơn vị đo như px). top(phía trên), bottom(phía dưới), left(bên trái), right(bên phải)
Ví dụ:
3. Thuộc tính position: fixed;
Một phần tử với position: fixed; được định vị so với chế độ xem, có nghĩa là nó luôn ở cùng một vị trí ngay cả khi trang được cuộn. Bạn có thể sử dụng các thuộc tính top(phía trên), bottom(phía dưới), left(bên trái), right(bên phải) để định vị các phần tử
Một phần tử cố định không để lại khoảng trống trên trang mà nó thường được đặt
Ví dụ:
4. Thuộc tính position: absolute;
Một phần tử với position: absolute; được định vị tương đối với phần tử mẹ của nó được định vị gần nhất (thay vì được định vị so với chế độ xem, như cố định)
Tuy vậy, nếu một phần tử được định vị theo phương pháp này không có phần tử mẹ được định vị thì nó sẽ sử dụng phần thân tài liệu và di chuyển cùng với việc cuộn trang
Lưu ý: Các phần tử có position: absolute; bị xóa khỏi luồng thông thường và có thể chồng chéo các phần tử
Ví dụ:
5. Thuộc tính position: sticky;
Một phần tử với position: sticky; được định vị dựa trên vị trí cuộn của người dùng
Một phần tử cố định chuyển đổi giữa relative và fixed, tùy thuộc vào vị trí cuộn
Nó được định vị tương đối cho đến khi gặp vị trí bù nhất định trong khung nhìn – sau đó nó “dính” vào vị trí (position: fixed; )
Bạn cũng phải xác định ít nhất một trong các thuộc tính top, right, bottom hoặc left để định vị dính để làm việc
Ví dụ: