html - Bootstrap:将行重新排列为列并更改元素的顺序
问题描述
我正在使用 React-Bootstrap 开发一个项目。我有一个部分,在 mobile/xs 视图上,应该如下所示:
红色方块是切换按钮,蓝色方块是当前显示的图像。
在大屏幕上查看时,我想更改顺序,使第一行 3 个红色方块堆叠成一列并浮动到左侧,第二行红色方块也堆叠成一列并浮动到右侧,蓝色方块在中间,像这样:
如何使用 Bootstrap 实现这一点?我知道 Bootstrap 是建立在 Flexbox 之上的,我需要使用 flex 属性吗?我是 Flexbox 的新手。理想情况下,我想在不乱用 Flexbox 的情况下实现这一点。有没有办法可以使用 Bootstrap 的偏移量来做到这一点?
在大屏幕上将红色方块(最初在移动视图上设置为行)更改为列然后让蓝色方块位于中间时很难。
解决方案
您可以使用.order
带有断点的实用程序:https ://getbootstrap.com/docs/4.0/layout/grid/#order-classes
所以图像(蓝色方块)将使用class="order-lg-2 order-3"
它可以切换它是在大屏幕(992px
+)上定位第二还是在任何更小的屏幕上定位第三。
要修复“旋转”,我认为最简单的方法是让包含组件成为 flex 容器,然后使用 flex 方向断点。容器最终会拥有 classes "d-flex flex-lg-row flex-column"
。只是将d-flex
组件声明为一个 flexbox 容器。flex-lg-row
并flex-column
告诉引导程序将项目设置为在大屏幕上水平排列,在较小屏幕上垂直排列(如果包含订单断点,则实现您想要的效果)。
您还需要对各个红色框行执行类似的操作。
除了 flexbox 之外,我看不到任何其他方式来(轻松地)旋转它。你可以玩这个有趣的游戏(也免费)来帮助巩固 flexbox 的不同部分:https ://mastery.games/p/flexbox-zombies 。
推荐阅读
- sql - 添加外键时奇怪的mysql行为
- react-native - 如何以编程方式获取 Shopify API
- dataframe - 从 dict 的 Dask 系列创建一个 Dask DataFrame
- cocoapods - CocoaPods 后备箱没有规格
- c++ - 使用 WASAPI 捕获蓝牙音频数据
- java - Java 对象类动态绑定
- spring-boot - 在 Api Gateway 中拦截请求
- wordpress - 控制台日志错误(索引):1 指向哪里?
- python-3.x - 了解 Python Pandas 中的滚动窗口
- git - Git 仅添加/提交移动而不添加内容更改