Thắc mắc về thuộc tính position trong CSS


hi
mình đang học css-position, nhưng ko hiểu cái điều này:
trên thẻ div, không có thẻ nào khác.
mình set margin-top và top cùng là 40px, tại sao trong 2 trường hợp, thẻ div ở trường hợp top:40px, nó thấp hơn cái trường hợp còn lại ạ?
thanks!

margin-top và top đâu có giống nhau. Bạn phải có chút suy luận chứ, nếu nó giống nhau hoàn toàn thì người ta “đẻ ra” làm chi cho rách việc?

Các thuộc tính: top, right, left, bottom chỉ nên dùng cho element có position: absolute mà thôi, dùng cho các position khác sẽ không kiểm soát được. Và box cha của cái mà có con là position: absolute thì cần position: relative

Trình duyệt web khác nhau xử lý mặc định (cho một thẻ mà chưa có bất kỳ dòng CSS nào) chưa giống nhau hoàn toàn. Vì thế, để tránh hoang mang bối rối khi chưa đủ trình để kiểm soát các thì nên biết đến khái niệm reset CSS và/ hoặc Normalize CSS, áp dụng nó khi viết CSS để tránh phải loay hoay vì tại sao nó ra này mà không ra kia dù đã nghiền ngẫm rất kỹ cũng không biết “em đã làm gì sai”.

7 Likes

mình có nói 2 cái đó giống nhau đâu.

ý mình là cái margin-top và top ở kia khi để cùng là 40px, thì độ dài nó tính từ thẻ div tới vị trí nào?
mà vị trí của thẻ div ở 2 trường hợp là khác nhau

Bạn có thể bật chế độ Nhà phát triển (Deveploper) (F12) trực tiếp trên trình duyệt và xem các thuộc tính được tính toán thế nào. Có đồ họa mô tả chi tiết các thuộc tính size, margin, padding và border ở mục Elements (Chromium).

4 Likes

vâng cảm ơn bạn, có lẽ tớ đã hiểu ra nhiều thứ rồi.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?