2011-12-07 42 views
1

我面臨一個問題:我在div兩側各有一個div標籤和100px寬度的圖像。現在我想添加一些div,在它的中間相互堆疊,它們必須是流體(使用%寬度),並且相對於支持多個分辨率。我該怎麼做?如何堆棧相對定位的div?

JSFiddle Code

+0

對您要疊加的元素應用負邊距和正Z指數?另外,不要忘記,你可以在'element:relative'中放置一個帶有'position:absolute'元素的元素,它可以完全放在它的父元素中,而不會影響其相對位置的兄弟元素的位置。 – Aaron

+0

難以回答沒有任何代碼,但如果你想覆蓋divs他們應該是位置:絕對與不同的左上角爲每個 – Yisela

+0

其實我使用margin-right:100px和margin-left:100px,如果我使用絕對我得到不受歡迎的效果,如果我使用相對定位,那些div實際使用的空間將爲空白。 – deXter

回答

3

要做到這一點,唯一的辦法中心position: relative是通過知道中心divs的height和調整margin-bottom緊接上面的div。看看http://jsfiddle.net/XMkDt/10/(這只是一條線,不是很有用)和http://jsfiddle.net/XMkDt/26/(這是相同的高度divs,但可以適應不同的高度;注意:在我的FF win7上,邊框的對齊方式正確,但是文本被調整了一個像素,我不知道爲什麼 - 但爲了您的目的,它會工作)。

注意:您需要確保z-index: 1已設置爲您當時實際顯示的div(因爲您進行不透明度更改),將其提升到其他div的上方。

+0

好的答案之間添加一些額外的空間,我不知道身高是所有它把所有相關在相對的 – Yisela

+0

嗯,它不只是高度,它的知道,所以你可以抵消它與底部邊距的正確距離。 – ScottS

+0

由於相對保持元素在原始位置的空間,不會改變以下div的位置? – deXter

0

喜歡的東西this?你需要大量的空的空間,雖然讓他們填寫寬度的地獄......

編輯:

流體寬度的新小提琴:http://jsfiddle.net/BXW8y/1/

+0

我想要的解決方案的問題仍然存在於您的答案中。如果我減少瀏覽器的寬度,則中心div會在正確的圖像後面顯示,而不是在流動和調整。 – deXter

+0

不,它不 - 至少不是如果我在 的http://jsfiddle.net/BXW8y/1/ – ptriek