我有兩個元素:一個具有相對定位,定義了我的頭部大部分,另一個是我想「浮動」在頂部的較小元素。爲什麼相對定位元素出現在浮動元素的上方?
<div id=floater style="float:right">
Floater!
</div>
<div id=header style="width: 100%; position: relative; background-color: lightgreen">
This is the header
</div>
如this fiddle所示,浮動組件不可見。但是,如果您刪除position: relative
,則浮動元素會立即彈出。用z-索引來擾亂並沒有產生任何利益。
標題組件不是「我的」;它通過React-Bootstrap繼承。我可以覆蓋,但現在我主要是想了解浮動和相對定位的相互作用。
這種行爲對我來說似乎很正常。請記住'z-index'對靜態定位元素沒有影響。你的目標又是什麼? – MaxArt
行爲是正確的位置:相對調出前面元素https://jsfiddle.net/eax6wdpx/3/,您還需要清除或修改BFC https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context,如果您想將元素從浮動移開。 - 許多方法中的2種:https://jsfiddle.net/eax6wdpx/4/ https://jsfiddle.net/eax6wdpx/5/ –
我弄清楚了我應該做的事情:我使用了絕對定位的浮動,這可能是正確的足夠這個應用程序。 在這個過程中,我發現即使是非浮動元素也會出現在相對位置下面,這似乎是線索:相對定位元素似乎排在最前面。 –