位置:絕對是讓這個而最好的方法保持#mainmenu的背景。事實上,這是我能想到的唯一一個可以從頭頂上看出來的人。當然沒有JavaScript。其他一切都需要更改HTML或將背景屬性移到不同的地方。
#mainmenu
{
position:absolute;
left:0;top:??px;
width:100%;
height:37px;
background-image: url(../images/mainmenu_bg5.jpg);
}
因爲#mainmenu的寬度:100%,那麼將成爲視口的100%而不是包含塊。(除非父母的位置:相對或溢出:隱藏)
所以,當你說它「全部怪異」時,我認爲這是因爲頁面上的其他內容。絕對項目和浮動項目均取自普通文檔流程中的項目。所以菜單下面的東西可以在&之下結束。
#mainmenu
{
position:absolute;
left:0;top:??px;
width:100%;
height:37px;
background-image: url(../images/mainmenu_bg5.jpg);
}
#mainmenu + *
{
padding-top:37px;
}
/* Exact selector not recommended due to poor browser support */
解決方案是,基本上,應用37px的邊距或填充到#mainmenu之後的第一件事。你也將無法使用margin:0 auto來定位絕對定位的元素,但是如果你希望它跨越視口的整個寬度,那應該不是一個問題......如果你想要居中放置菜單,當然,你需要某種形式的後裔到中心:
#mainmenu
{
position:absolute;
left:0;top:??px;
width:100%;
height:37px;
background-image: url(../images/mainmenu_bg5.jpg);
}
#mainmenu > *
{
margin:0 auto;
}
/* Exact selector not recommended due to poor browser support */
/* & more properties needed if descendant is list with floated <li>s */
#mainmenu + *
{
padding-top:37px;
}
/* Exact selector not recommended due to poor browser support */
但也有很多的事情,你會看到在頁面上定位的關係變化到其他事情:絕對的。所以要排除故障,我真的需要更多地瞭解頁面上的其他內容。
您可能會發現另一種解決方案,但如果您沒有 - 發佈一個頁面,我可以看看&我可能能夠幫助您解決絕對定位問題。也就是說,如果它能用於這個特定的佈局。
是多數民衆贊成在我正在尋找,使這樣的菜單,我怎麼能有菜單背景定位的HTML?你可以給我一個例子,請檢查我的更新問題的css – Karem 2010-08-14 01:36:52