2011-11-17 17 views
2

免責聲明:好的,所以我知道,通過隱藏頁面頂部的div w/jQuery並添加事件處理程序到它。jQuery/PHP的頂級通知欄,推動所有頁面內容下降

困境:我需要在一個頁面上加入一個通知欄,它將bg圖像設置爲body,所以當你在頂部顯示()一個div時,它會將所有內容向下推動,拋出整個網站。我試圖避免將所有內容封裝在div中,並將bg css切換到該div,因爲擔心會拋出其他子元素的樣式。

如果有人知道推送所有頁面內容的方法(包括內容),我將不勝感激任何智慧。

+0

你是什麼意思甩開整個網站?你有演示還是小提琴? –

+0

下面的兩個答案將解決您的問題。因爲這個問題的表述方式使得它有點含糊不清,所以很難對其中任何一個提出支持。如果您想要移動背景,請使用$('body')。preprend('#notice')方法;如果您不想移動背景,請與現有內容相關,請使用margin-top方法。 – rkw

回答

2

您可以使用body元素上的margin-topbackground-position的組合來偏移背景圖像。

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

首先感謝大家的時間。 – Swordfish0321

+0

@rkw如果我提出任何含糊不清的問題,我很抱歉。我按照你的建議(w/body和html)嘗試了prepend()函數,並且兩次都將內容向下移動而不移動bg。 Derek Hunziker,我最終使用了你的.css方法,並最終推動了我的BG,並讓我實現了我試圖完成的任務。謝謝大家的意見! – Swordfish0321

+0

很高興爲你效勞!不要忘記標記爲答案;) –

0

您可以嘗試使用jQuerys .prependTo()將div加到您的內容的頂部。通過這種方式,新的div元素將自然而然地放在一切之前,然後您還可以輕鬆地設置元素的樣式。這應該讓你的背景保持在同一個位置。

+1

這樣也不會移動背景,就像提問者想要的那樣。 – icktoofay

相關問題