[英]Bootstrap grid-system is always in front
我正在嘗試設計一個全屏菜單。 它的效果很好,但是當頁面本身包含引導網格系統時,網格始終位於最前面。 使用我發現的Google Chrome瀏覽器開發人員工具,是由於所有col-*
都包含
position: relative
如果我在開發人員工具中將其禁用(那么position
為static
),則它處於后台。 但是恕我直言,我不能只編輯整個bootstrap-css。
這是我的html(刪除了太多內容):
<div class="header">
<input type="checkbox" id="toggle" style="display:none;" />
<label class="toggle-btn toggle-btn__cross" for="toggle">
<div class="bar"></div>
</label>
<label class="info">
test
</label>
<div class="nav">
<div class="menu">
<!-- here is the menu -->
</div>
</div>
</div>
<div class="container body-content">
<div class="wrap">
<div class="row">
<!-- THIS HERE IS ALWAYS IN FRONT DUE TO POSITION:RELATIVE -->
<div class="col-xs-6">key</div>
<div class="col-xs-6">value</div>
</div>
</div>
<hr/>
<footer>
<p>footer</p>
</footer>
</div>
header
class是顯示或隱藏帶有class menu
的div
的整個導航。 div隱藏類body-content
的完整內容(至少應該如此)。
所以
col
class都設置為relative
? 我不想以后再得到任何驚喜。 position: relative
在需要重新排列列時,在Bootstrap中是position: relative
。 這可以通過使用col-sm-push-4
或類似的類來完成 。 我不建議您覆蓋它,因為這會使您的項目將來成為維護的噩夢。 最好使用被設計為覆蓋繪畫順序的屬性: z-index
。 使用此屬性時要小心,因為它容易被濫用。
首先,您的案子只需要兩個規則
.header {
position: relative;
z-index: 1
}
position: relative
是必需的,因為z-index
不會影響position: static
元素(默認值)。 z-index
只需為1
。 如果您發現自己需要將其設置為非常高的水平(例如1000s),則可能只需要設置.body-content
的z-index
,在這種情況下,只需將其設置為.body-content
上的1
和2
。 .header
。
無論哪種方式,這都應該是您所需要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.