在页面顶部插入div而不使用javascript覆盖

时间:2013-11-21 10:24:59

标签: javascript css html overlay

我想知道是否有人可以帮助我?

基本上我有一段Javascript,我希望能够给人们。所以以下是真的:

我无法控制他们决定放入代码段的页面中的毛茸茸(出于各种原因) - 它可能位于中间,结尾,无处可去。

所有代码片段都会在页面顶部放置一个小DIV。目前我正在做以下事情(这是片段):

<div id="mydiv" style="display:none; position: fixed; top: 0; left: 0; z-index: 999; width: 100%; height: 40px; background-color:red; text-align:center; color:white"><br>Message Inside Div</div>
<script>if (Condition) { document.getElementById("mydiv").style.display = "block"; }</script>

现在,这是一种享受,当“条件”为真时,它会显示div。但是,使用此方法,它会覆盖div,并将其固定在页面顶部。

但是,我也想这样做,以便div插入页面顶部,但正常滚动页面,并且不覆盖顶部的内容(IE:它将内容向下推)显示)。

关于我如何做到这一点的任何想法,请记住:我没有任何访问他们的页面(我甚至不知道页面上还有什么),我给他们的片段可以去任何地方页。

1 个答案:

答案 0 :(得分:1)

我想你无法避免干涉现有的代码和样式 - 但如果你担心身体上现有的上边距,只需先检查这个值。即。获取正文上边距值,添加元素高度,重新应用。 jquery语法中的示例(简单来说,可以在vanilla javascript中执行相同的操作)

$('body').css('margin-top',$('body').css('margin-top') + yourdiv-height);