jQuery/PHP,用于向下推送所有页面内容的顶部通知栏

jQuery/PHP,用于向下推送所有页面内容的顶部通知栏,php,jquery,notifications,Php,Jquery,Notifications,免责声明:好的,我知道通过在页面顶部隐藏div w/jQuery并向其添加事件处理程序,创建顶部通知栏非常容易 进退两难:我需要在一个页面上添加一个通知栏,将bg图像设置为正文,这样当你在顶部显示一个div时,它会向下推所有内容,而不是向下推bg,并抛出整个站点。我试图避免将所有内容包装在一个div中,并将bgcss切换到该div中,以避免丢掉其他子元素的样式 如果有人知道将所有页面内容(包括内容)向下推的方法,我将非常感谢任何智慧 您可以尝试使用jQuerys.prependTo()将div前

免责声明:好的,我知道通过在页面顶部隐藏div w/jQuery并向其添加事件处理程序,创建顶部通知栏非常容易

进退两难:我需要在一个页面上添加一个通知栏,将bg图像设置为正文,这样当你在顶部显示一个div时,它会向下推所有内容,而不是向下推bg,并抛出整个站点。我试图避免将所有内容包装在一个div中,并将bgcss切换到该div中,以避免丢掉其他子元素的样式


如果有人知道将所有页面内容(包括内容)向下推的方法,我将非常感谢任何智慧

您可以尝试使用jQuerys.prependTo()将div前置到内容顶部。这样,新的div元素自然会优先于一切,然后您也可以轻松地设置元素的样式。这应该允许您的背景也保持在相同的位置。

您可以在主体元素上使用
边距顶部
背景位置
的组合来偏移背景图像

$('#note').show(); // absolute positioned at top of page
$('body').css({marginTop: '50px', backgroundPosition: '0 50px'});

把整个网站都扔了是什么意思?你有演示或小提琴吗?下面的两个答案可以解决你的问题。很难对其中任何一个进行投票,因为这个问题的措辞让它有点模棱两可。如果希望背景相对于现有内容移动,请使用$('body').prepend('#notice')方法;如果您不希望背景相对于现有内容移动,请使用页边距顶部方法。这也不会移动背景,就像问问题的人一样。@rkw如果我提出的问题有任何歧义,我深表歉意。我按照您的建议尝试了prepend()函数(包括body和html),两次都是将内容向下移动,而不是移动bg。Derek Hunziker,我最终使用了你的.css方法,它将我的bg向下推,使我能够实现我试图实现的目标。谢谢大家的投入!迟做总比不做强