【发布时间】:2019-08-11 08:27:27
【问题描述】:
假设您有一个包含四个主要块的页面(每个块包含不同数量的内容):
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
在较窄的浏览器宽度下,它们应该以与它们在 HTML 中相同的顺序出现:
但是在更宽的宽度上,它们应该重新排列成这种布局,带有侧边栏,块的顺序不同:
使用 Bootstrap 4 的网格布局有没有办法做到这一点?我可以看到如何reorder 块,但这似乎只适用于同一行中的块。
更新:第二个布局可以这样完成,但我看不出有什么方法可以让它看起来像第一个布局:
<div class="container">
<div class="row">
<div class="col-sm-9">2</div>
<div class="col-sm-3">
<div>3</div>
<div>1</div>
<div>4</div>
</div>
</div>
</div>
【问题讨论】:
-
我认为这种特殊情况不能像您需要的那样仅使用 Flexbox 来完成;我认为更适合 CSS Grid;正如你所说;为了使订单类别像所有元素都需要在同一行上一样工作;并且该布局不允许它....另一种选择是在某些尺寸上隐藏一列
-
@Zim 如果我有任何有用的代码,那么我会......但我会回答我自己的问题:)
-
谢谢@IvanS95 我想可能是这样,但想知道我是否错过了什么。 Flexbox 只适用于一系列块(水平或垂直),而不是完全重新排列事物......
-
@Zim 我已经为第二个布局添加了示例代码,但我不确定这是否有帮助。
标签: bootstrap-4