有没有办法让特定的 div 忽略它的父 div 的位置?

2024-04-30

我有一个 div,其位置因其包含的 div 的相对定位而偏离。虽然删除父级的相对定位可以解决问题,但我们宁愿不将其作为解决方案来实现,因为它可能会破坏其他内容。有没有办法强迫孩子忽略父母的定位?


不幸的是,没有办法让一个元素通过 CSS 动态地“补偿”其父元素的相对位置。除非重新考虑布局,否则position:fixed不是你想要的,你的选择是:

  1. 手动补偿父母的定位。赋予子元素position:relative并且偏移量与父级的偏移量完全相反(您将需要再次键入确切的值)。最小化麻烦,但您现在必须记住手动保持两对偏移量(父级和子级)同步。发表评论说“如果你改变这个,你也必须改变#THAT”会有所帮助。
  2. 使用 Javascript 动态移动孩子。您可以在布局完成后执行一些计算,并将子元素移回您想要的位置。至少这不是一个干净的解决方案,它可能会导致短暂的视觉跳转,并且对于禁用 Javascript 的人来说不起作用(使您的网站在视觉上被破坏)。唯一的好处是它不需要维护,除非您的布局发生根本变化。

总而言之,我建议您执行#1 而不是#2,并且只有在您无法获得最佳解决方案(更改布局)时才这样做。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法让特定的 div 忽略它的父 div 的位置? 的相关文章