相对定位div内的绝对定位div?

时间:2010-09-27 00:00:02

标签: css html

大多数人都知道

  

在父级设置为position的div上使用绝对定位:relative
  将导致绝对定位的div变为相对于父div而不是身体。

我的问题是,有没有办法消除这种影响?

I.E父div必须设置为相对位置,因此它将位于布局中,但absolute div需要相对于正文而不是父div。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

  • 从内部元素中删除绝对值
  • 将绝对值移至相对定位div的外部
  • 使用javascript计算偏移量并使用负偏移量,这是hacky,不建议使用。也不可靠。

答案 1 :(得分:0)

不,除了使用position: fixed设置相对于视口的位置(因此它与页面一起滚动)之外,你不能突破包含块。

您需要将绝对div移出相对父级,或者找到另一种方法来解决导致您使用position: relative的任何布局问题。 (如果在IE中出现hasLayout问题,请尝试其他典型的黑客攻击,例如zoom: 1或仅限IE height: 1%