2010-05-31 44 views
7

Sự khác nhau giữa vị trí tương đối và vị trí tuyệt đối là CSS ví dụ: .style { position: relative; }vị trí trong CSS

.style { position: absolute; }

+2

bạn cần phải biết trong một thực hành hướng dẫn nhanh chóng, rất tốt. http://www.barelyfitz.com/screencast/html-training/css/positioning/ – duckbox

Trả lời

5

Từ W3schools:

Absolute

Tạo một vị trí tuyệt đối yếu tố, vị trí tương đối so với yếu tố phụ huynh đầu tiên rằng có một vị trí khác hơn là tĩnh. vị trí phần tử được quy định với các "left", "top", "đúng", và tính "đáy"

tương đối

Tạo một tương đối vị trí phần tử, tương đối vị trí tốt để của nó vị trí bình thường, vì vậy "trái: 20" thêm 20 pixel vị trí LEFT của phần tử

Ngoài ra kiểm tra this page, nó sẽ cung cấp cho bạn cái nhìn tổng quan rất đẹp về vị trí trong CSS.

1

Với người thân, bạn có thể định vị phần tử liên quan đến vị trí ban đầu của nó và không gian ban đầu vẫn giữ mục đó.

Tuyệt đối đưa mục đó ra khỏi luồng thông thường của HTML và bạn có thể định vị mục đó liên quan đến phần tử gốc.

+0

So với phần tử gốc? Điều đó không chính xác. –

+0

@Philippe Leybaert: không nhất thiết - nếu phần tử gốc có vị trí: tương đối/tuyệt đối/cố định, vị trí tuyệt đối sẽ liên quan đến phần tử gốc. – oezi

+0

So với phần tử gốc đầu tiên được định vị theo bất kỳ cách nào, nếu không có phần tử nào, nó sẽ liên quan đến phần tử cơ thể –

1

Sử dụng tương khi bạn xem xét phạm vi đến yếu tố phụ huynh hoặc các yếu tố trước đó.

Sử dụng tuyệt đối khi bạn muốn tạo thành phần tử ở vị trí bất khả xâm phạm.

Bạn cũng có thể tìm hiểu những khác biệt giữa tài sản css margin-left và để lại cho Tất cả mọi thứ tương đối và tuyệt đối

<html> 
<body> 
    <div style="width:300px; height:200px; margin:auto; background:red"> 
     <div style="position:relative; left:10px; top:20px;"> 
      test 
     </div> 
     <div style="position:relative; left:10px; top:20px;"> 
      test 
     </div> 
     <div style="position:absolute; left:0; bottom:0px;"> 
      test 
     </div> 
        <div style="position:absolute; margin-left:0; margin-bottom:0px;"> 
      test 
     </div> 
    </div> 
</body> 

Các vấn đề liên quan