2012-10-16 63 views
6

我一直認爲通過將div設置爲relative並且right 0將div放置在最右邊,如果它的父級爲100%寬度。顯然我錯了,只有絕對的作品。那麼沒有辦法讓它與親戚一起工作嗎?位置相對和正確的屬性

+0

是。它是'float:right';' – Giona

回答

14

你必須設置父親是相對的,它是絕對定位的孩子。

.parent{ 
    position: relative; 
    width: 100%; 
} 
.right{ 
    position: absolute; 
    width: 200px; 
    height: 200px; 
    background: red; 
    top:0; 
    right:0; 
} 

喜歡這裏:http://jsfiddle.net/willemvb/n9Vrv/

1

那麼,有沒有辦法讓它與相關工作?

正確。相對定位是從靜態定位的位置偏移的位置。

您需要絕對定位以相對於包含塊的邊緣進行定位。

2

有一種方法可以使它對親戚有效。

一種方法是首先將顯示器的父級設置爲inline-flex。 (子)position:relative; margin-left:auto; right:0;

+0

+1 thr實際解決方案。它甚至在子元素上使用'position:relative'。對於'flex'來說很重要。這是一個小提琴,展示解決方案:https://jsfiddle.net/tky8q9zt/ – dakab