html - Bootstrap : Rearranging rows into columns and changing the order of elements

标签 html css twitter-bootstrap responsive-design flexbox

我正在使用 React-Bootstrap 开发一个元素。我有一个部分,在移动/xs View 上,应如下所示:

enter image description here

红色方 block 是切换按钮,蓝色方 block 是当前显示的图像。

当在更大的屏幕上查看时,我想更改顺序,以便第一行 3 个红色方 block 堆叠成一列并 float 到左侧,第二行红色方 block 也堆叠成一列并 float 到右边,蓝色方 block 在中间,像这样:

enter image description here

如何使用 Bootstrap 实现此功能?我知道 Bootstrap 是建立在 Flexbox 之上的,我需要使用 flex 属性吗?我是 Flexbox 新手。理想情况下,我想在不使用 Flexbox 的情况下实现这一点。有没有办法使用 Bootstrap 的偏移量来做到这一点?

在大屏幕上将红色方 block (最初在移动 View 上设置为行)更改为列,然后将蓝色方 block 放在中间时遇到了困难。

最佳答案

您可以使用带有断点的.order实用程序:https://getbootstrap.com/docs/4.0/layout/grid/#order-classes

因此图像(蓝色方 block )将使用 class="order-lg-2 order-3" 这样它就可以切换是否在大屏幕上定位第二(992px) code>+) 或任何较小的第三个。

要解决“旋转”问题,我认为最简单的方法是将包含组件设为 Flex 容器,然后使用 Flex 方向断点。容器最终将具有类“d-flex flex-lg-row flex-column”d-flex 只是将组件声明为 Flexbox 容器。 flex-lg-rowflex-column 告诉 Bootstrap 在大屏幕上设置水平排列在中的元素,并在<中设置垂直排列的元素em>列较小的列(如果包含顺序断点,即可达到您想要的效果)。

您还需要对各个红框行执行类似的操作。

除了 flexbox 之外,我没有看到任何其他方法可以(轻松)旋转它。您可以玩这个有趣的游戏(也免费)来帮助巩固 Flexbox 的不同部分:https://mastery.games/p/flexbox-zombies .

关于html - Bootstrap : Rearranging rows into columns and changing the order of elements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57518895/

相关文章:

javascript - 如何删除地址栏中页面的 URL?

html - Bootstrap 下拉菜单子(monad)菜单不起作用

css - 自定义 Bootstrap - 如何更改特定宽度下的列数?

javascript - CSS3 box-shadow inset 痛苦的性能 killer

jquery - 解析 HTML 代码

jquery - 固定位置 div 在调整大小时会飞

html - 将图像粘贴到 Bootstrap 3 中的页脚顶部

javascript - jQuery 扩展器插件 css 文本显示失败

html - 如何设置 html "select"元素的选项样式?

css - 固定 DIV 问题中的另一个居中 DIV