【发布时间】:2020-07-10 21:34:08
【问题描述】:
我试图在 Bootstrap 中有 2 列。第一个(导航栏)将是全宽(col-12),另一列(内容)将是页面的 1/3 和 2/3,因此 col-4 和 col-8。但是,在移动设备上,如图所示,第二行与第一行重叠(我在行上添加了红色和黑色边框以查看问题):
现在,当我在第一行做一个底部边距时,我看到以下内容:
到目前为止,导航栏与行重叠
导航栏的代码:
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
</ul>
</div>
</nav>
以及正文的代码:
<div class="container shadow">
<div class="row">
<div class="col-12">
<nav class="navbar navbar-expand-lg navbar-light bg-light">
{....}
</nav>
</div>
</div>
<div class="row">
<div class="col-lg-4 col-md-6 card border-0">
<div class="leftColumn">
{...}
</div>
</div>
<div class="col-lg-8 col-md-6 card border-0">
<div class="rightColumn">
{...}
</div>
</div>
</div>
</div>
我做错了什么?
编辑:
来自引导文档:
'固定导航栏使用位置:固定,这意味着它们是从 DOM 的正常流程中拉出来的,可能需要自定义 CSS(例如,padding-top on the )以防止与其他元素重叠。'
codepen 的链接:
https://codepen.io/witteWas/pen/xxGMYYa
编辑:
通过将第二行嵌套在第一行中解决了问题。
<body>
<div class="container">
<div class="row">
<div class="card has-shade">
<div class="col-12">
<nav class="navbar navbar-expand-sm navbar-light">
{...}
</nav>
<div class="row">
<div class="col-lg-4 col-sm-12 card border-0">
{...}
</div>
<div class="col-lg-8 col-sm-12 card border-0">
{...}
</div>
</div>
</div>
</div>
</div>
</body>
【问题讨论】:
-
请分享在线代码编辑器的链接。
标签: html css twitter-bootstrap bootstrap-4 grid