【发布时间】:2020-08-18 06:18:36
【问题描述】:
我有以下布局问题。在移动设备的一列中,4 个块依次为 a1、b1、a2、b2。 在桌面上,我想得到 a1,a2,b1-b2,即 a1 后跟 a2,然后在同一行但低于 a2 的 b1-b2。我希望使用 flexbox,但不知道该怎么做。
手机:
<div style='display:flex;flex-direction:column>
<div id='a1'></div>
<div id='b1'></div>
<div id='a2'></div> //each of these is 100VW
<div id='b2'></div>
</div>
桌面:
<div id='a1'></div> // the first two are 100vw
<div id='a2'></div>
<div id='b1'></div><div id='b2'></div> //each of these would be 50vw
有没有办法用一个版本的html做到这一点,只修改css?
【问题讨论】:
-
您处理的是 2 维,而不是 1,因此请查看 Grid 而不是 Flexbox。
-
这是关于 CSS 而不是 DOM。 CSS 对 DOM 没有影响。您还将此标记为 jquery 和 javascript。为什么?
-
@Rob,显然两者都有关。我们需要将流从 a1,b1,a2,b2 更改为 a1,a2,b1,b2
-
好吧,flex 和任何其他 CSS 属性都不会改变 DOM 流。
-
@Quentin,我知道我可以单独放置每个单元格 - 有没有更优雅的解决方案?
标签: javascript jquery layout flexbox