我正在尝试使用 Flexbox 或 float 创建 2 1 2 布局,如添加到此问题的图像所示。有没有什么方法可以仅使用有序的元素列表成功地做到这一点?
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
1,2,4,5 的大小相同,3 的宽度与其他 block 相同。
我正在尝试使用 Flexbox 来完成此操作,但我似乎无法获得 2 under 1 和 5 under 4。
最佳答案
你可以用 flex-direction: column
和 flex-wrap: wrap
来做到这一点,但我认为你必须设置 fixed height on parent
body, html, ul {
margin: 0;
padding: 0;
}
* {
box-sizing: border-box;
}
ul {
display: flex;
height: 100vh;
list-style-type: none;
flex-direction: column;
flex-wrap: wrap;
}
li {
flex: 0 0 50%;
border: 1px solid black;
display: flex;
align-items: center;
justify-content: center;
font-size: 50px;
}
li:nth-child(3) {
flex: 0 0 100%;
}
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
关于html - Flexbox/Float - 2 1 2 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36724124/