2012-11-22 181 views
0

基本上,我的網站佈局方式中,我有一些元素具有超出內容頁面的完整寬度背景(例如導航欄背景完全穿過頁面)。所以基本上我決定要做的是在內容div內創建另一個div,併爲導航欄起作用,但對於站點的下一部分,出於某種原因,子元素覆蓋了所有瀏覽器中的父元素。我不明白爲什麼它似乎適用於導航欄部分。覆蓋父元素的子元素

這裏是CSS

#top-slider { 
width:100%; 
height:400px; 
background: #222; /* Show a solid color for older browsers */ 
background: -moz-linear-gradient(#fefefe, #f1f1f1); 
background: -o-linear-gradient(#fefefe, #f1f1f1); 
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fefefe), to(#f1f1f1)); /* older webkit syntax */ 
background: -webkit-linear-gradient(#fefefe, #f1f1f1); 
-webkit-box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
-moz-box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
float:left; 
padding-bottom:20px; 
position:relative; 
width:980px; 


} 

#top-slider-full-bar { 
position:absolute; 
left:-9999px; 
width:99999px; 
background: #222; /* Show a solid color for older browsers */ 
background: -moz-linear-gradient(#fefefe, #f1f1f1); 
background: -o-linear-gradient(#fefefe, #f1f1f1); 
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fefefe), to(#f1f1f1)); /* older webkit syntax */ 
background: -webkit-linear-gradient(#fefefe, #f1f1f1); 
-webkit-box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
-moz-box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 2px; 
height:400px; 

}

這裏是網站,http://limerickchambers.hailstormcommerce.com你可以看到,它似乎是導航欄工作正常... 我用盡z-index但似乎沒有效果。 limerickchambers.hailstormcommerce.com

謝謝

+0

沒有違法,但存在的問題與您的代碼其實,我不明白,你有一個ID叫頁,你wrapp與它所有的內容是980px寬,而且比你放在一個99999px寬度它定位絕對,它顯示了封面,因爲它的絕對位置,如果我可以給你一個建議重建你的頁面結構邏輯在這一個 –

+0

我接受了這個建議謝謝:) – Adrian

回答

1

考慮更改HTML結構是這樣的:http://jsfiddle.net/KpTHz/

這將讓這一切更容易管理。

<div class="outer"> 
<div class="inner">HEADER</div> 
</div> 

<div class="outer"> 
<div class="inner">CONTENT</div> 
</div> 

<div class="outer"> 
<div class="inner">FOOTER</div> 
</div> 


.outer { 
width:100%; 
background:#ccc; 
} 

.inner { 
width:920px; 
background:#999; 
margin:0 auto 20px; 
padding:20px; 
} 
+0

謝謝你這更有意義,我是對的,在較小的屏幕和手機上,由於設置了「px」,「inner」的寬度會佔據屏幕?它只是我不希望屏幕的中心在手機等任何一方都有寬廣的空白內容。 – Adrian

+1

在我上面的示例中,網站的寬度是960像素(920 +左右填充20像素)。你可以改變它成爲你喜歡的任何東西。任何屏幕都會顯示960像素的寬度以及其他任何可以顯示的空間。 –

+0

謝謝我做了改變,新的佈局更有意義。我知道我正在以一種奇怪的方式去解決這個問題,尤其是看到它很簡單。 雖然我不得不說,但我仍然沒有真正完全理解爲什麼它首先涵蓋了它,即使試圖糾正Z指數。 – Adrian