css - 如何在 Bootstrap 4 中跨越一列两行

标签 css bootstrap-4 bootstrap-grid

虽然这个问题之前被问过很多次,但所有答案都建议跨越一列,将其他列放在一个内行中,如下所示:

<div class="row">
  <div class="col-12 col-md-4">logo</div>
  <div class="col-12 col-md-8">
    <div class="row">
      <div class="col-12">top nav</div>
      <div class="col-12">bottom nav</div>
    </div>
  </div>
</div>

结果在桌面上看起来像这样: enter image description here

而且,在移动设备上它看起来像这样: enter image description here

但是,所需的结果是将 Logo 放在两个导航之间,如下所示: enter image description here

到目前为止,我最好的选择是放置两个 Logo ,然后以不同的视口(viewport)大小隐藏和显示它们。哪个有效,但并不是一个真正好的解决方案。

最佳答案

使用自定义网格布局是我的第一个建议。 (或者也许 bootstrap 有一些快捷方式,但我不知道它们)您可以使用 order-X 类的 bootstrap。但这不会帮助您在不同包装器中的 nav div 之间获得 logo div

.special {
  display: grid;
}

div {border: 1px solid grey;}

/* for tablets and desktops*/
@media screen and (min-width: 600px) {
  .special {
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 50px 50px;
  }
  
  .logo {grid-area: 1/1/3/2;}

}
<div class="special">
  <div class="topNav">top nav</div>
  <div class="logo">logo</div>
  <div class="bottomNav">bottom nav</div>
</div>

关于css - 如何在 Bootstrap 4 中跨越一列两行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53810967/

相关文章:

html - 如何删除底部多余的空间?我在下面解释了

javascript - 在引导网格中的第 n 个子项之后插入 div

css - 不换行 Bootstrap 列

css - 带有 `:hover` 和多个相邻兄弟选择器的 Webkit 错误

html - 页脚底纹高度错误

具有数据属性的 Jquery 和 img 画廊不起作用

html - Bootstrap 嵌入响应式格式不适合横向移动浏览器

javascript - 如何根据搜索框过滤引导卡

javascript - 使用 Twitter Bootstrap 3 的网格时,面板主体与导航栏标题重叠

css - Angular:Google Material 图标未呈现