【问题标题】:Bootstrap 4 - Change order of 5 column layout in mobileBootstrap 4 - 移动设备中 5 列布局的更改顺序
【发布时间】:2019-03-13 23:47:39
【问题描述】:

我有一个包含 3 列的页面,如下所示:

<div class="row">
   <div class="col-lg-3">
        <div>**Section 1**</div>
        <div>**Section 2**</div>
   </div>
   <div class="col-lg-6">**Section 3**</div>
   <div class="col-lg-3">
        <div>**Section 4**</div>
        <div>**Section 5**</div>
   </div>
</div>

我想改变手机中部分的顺序,如下图:

【问题讨论】:

标签: html css flexbox bootstrap-4


【解决方案1】:

这里有 2 个选项...

响应式使用 flex 方向:

lg 和更大的地方使用弹性框列。 row 容器必须具有定义的高度。在这种情况下,我使用了 h-100 (height: 100%;)。

<div class="container vh-100">
   <div class="row h-100 flex-lg-column flex-wrap">
      <div class="col-lg-3 border flex-grow-1 overflow-auto order-3 order-lg-0">1</div>
      <div class="col-lg-3 border flex-grow-1 overflow-auto order-4 order-lg-0">2</div>
      <div class="col-lg-6 border order-first order-lg-0 min-vh-100 overflow-auto">3</div>
      <div class="col-lg-3 border flex-grow-1 overflow-auto">4</div>
      <div class="col-lg-3 border flex-grow-1 overflow-auto order-last order-lg-0">5</div>
   </div>
</div>

https://www.codeply.com/go/WDjcxLu5bC


使用 flexbox 和浮动:

此选项在lg 和更大的屏幕上使用浮动,并在较小的屏幕上返回到 flexbox,这允许我们在布局垂直堆叠时更改列的顺序。此布局也仅限于height:100%

<div class="row d-lg-block vh-100">
    <div class="col-lg-3 float-left d-flex flex-column h-100 p-0">
        <div class="flex-grow-1 px-3 border">1</div>
        <div class="flex-grow-1 px-3 border">2</div>
    </div>
    <div class="col-lg-6 float-left border order-first order-lg-0 h-100 overflow-auto">3</div>
    <div class="col-lg-3 float-left border h-50">4</div>
    <div class="col-lg-3 float-left border h-50">5</div>
</div>

https://www.codeply.com/go/eXY3HFr5A4

【讨论】:

  • 感谢您的回答。此代码在移动设备中给出此顺序:3,1,2,4,5。但我需要这个顺序:3,4,1,2,5。有可能吗?
  • 我更新答案...这是调整订单类别的问题
猜你喜欢
  • 2020-07-03
  • 2019-08-04
  • 1970-01-01
  • 2013-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-25
相关资源
最近更新 更多