Html 脱离位置:相对*无*改变结构
一个简化的例子: HTML: 作为小提琴手: 好的,Html 脱离位置:相对*无*改变结构,html,css,position,Html,Css,Position,一个简化的例子: HTML: 作为小提琴手: 好的,C位于B前面和D后面,并且相对于A定位。我希望将其相对于文档定位,但将其保持在B和D之间(以z索引和制表符顺序)。如果C的位置更改为position:fixed,除了(显然)不随页面滚动之外,它完全符合我的要求 我见过很多解决方案,其中包括将div从其父级中分离出来以实现这一点,但这需要设置z索引和制表符顺序,这似乎是一个需要管理的噩梦(这是一个插件,因此周围的代码不在我的控制范围内) 如何在不破坏B或D或改变结构的情况下,给C一个真正的绝对位
C
位于B
前面和D
后面,并且相对于A
定位。我希望将其相对于文档定位,但将其保持在B和D之间(以z索引和制表符顺序)。如果C
的位置更改为position:fixed
,除了(显然)不随页面滚动之外,它完全符合我的要求
我见过很多解决方案,其中包括将div从其父级中分离出来以实现这一点,但这需要设置z索引和制表符顺序,这似乎是一个需要管理的噩梦(这是一个插件,因此周围的代码不在我的控制范围内)
如何在不破坏B
或D
或改变结构的情况下,给C
一个真正的绝对位置?JavaScript可以很好地进行设置,但我需要将最终页面位置完全四舍五入(如果您对原因感兴趣,请参阅我的其他一些问题),所以我认为我不能使用绝对位置-容器的绝对位置
方法。如果\A
具有位置:相对
它内部的任何东西都将相对于\A
定位
因此#B
#C
和#D
都将包含在#A
中。如果文档位于具有位置的内容中,则无法将其相对于文档进行定位
您可以使用负边距将其定位在
#A
之外,但前提是#A
具有溢出:可见我也可以使用负左和顶,但遗憾的是,这并不能解决我的问题。我需要完全消除对A
位置的依赖。
<div id="A">
<div id="B"></div>
<div id="C"></div>
<div id="D"></div>
</div>