我正在尝试将div插入到正文的任何部分,并使其position: absolute
相对于整个文档而不是具有position: relative
的父元素。
答案 0 :(得分:69)
答案 1 :(得分:32)
您必须将div
放在position:relative
元素之外并放入body
。
答案 2 :(得分:30)
我的解决方案是使用jQuery将div移到其父级之外:
<script>
jQuery(document).ready(function(){
jQuery('#loadingouter').appendTo("body");
});
</script>
<div id="loadingouter"></div>
答案 3 :(得分:8)
如果您不想将该元素附加到body
,则以下解决方案将起作用。
我来到这个问题寻找一个解决方案,可以在不将div附加到正文的情况下工作,因为当鼠标悬停在新元素和产生它的元素上时,我有一个鼠标悬停脚本我想运行。只要你愿意使用jQuery,并受到@Liam William的答案的启发:
var leftOffset = <<VALUE>>;
var topOffset = <<VALUE>>;
$(element).css("left", leftOffset - element.offset().left);
$(element).css("top", topOffset - element.offset().top);
此解决方案通过减去元素的当前左侧和顶部位置(相对于正文)来将元素移动到0,0。然后将元素相对于正文放置在任意位置就像添加左侧一样简单和顶部偏移值。
答案 4 :(得分:5)
仅使用CSS和HTML无法做到这一点。
使用Javascript / jQuery,您可以将元素jQuery.offset()
添加到DOM,并将其与jQuery.position()
进行比较,以计算它应该在页面上显示的位置。