我在使用Flexbox时遇到了问题。我尝试了很多变种,但没有找到解决方案。
我需要子元素与父容器一起 拉伸 。
第一行的宽度还可以,但是背景应该随内容 拉伸。
关于第二行,背景 拉伸 得不错,但它会占有等宽的空间,我希望宽度能够根据内容而定,像 自动 宽度......
我希望它能像在 variant 3 中使用 display: table
一样 拉伸。
.row {
display: flex;
justify-content: space-around;
margin: 20px;
color: #fff;
}
.row .col {
min-height: 40px;
background: #333;
padding: 10px;
}
.row-v2 {
flex-wrap: wrap;
}
.row-v2 .col {
flex: 1;
}
.row-table {
width: 100%;
display: table;
}
.col:nth-child(2) {
background: #666;
}
.row-table .col {
display: table-cell;
padding: 10px;
background: #333;
color: #fff;
}
<h1>Variant 1</h1>
<div class="row">
<div class="col">test</div>
<div class="col">test 1234</div>
<div class="col">e</div>
</div>
<h1>Variant 2</h1>
<div class="row row-v2">
<div class="col">test</div>
<div class="col">test 1234</div>
<div class="col">t</div>
</div>
<h1>Variant with table method</h1>
<div class="row-table">
<div class="col">test</div>
<div class="col">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore, sit repellendus iste doloremque architecto est et voluptate, blanditiis culpa neque!</div>
<div class="col">Lorem ipsum dolor sit amet.</div>
</div>
width: auto
是默认值,因此您可以将其删除。Firefox 在版本21(现在是56)中删除了moz
前缀。如果仍要使用它,则还需要在display: flex
上添加前缀,否则它不会应用于那些旧版本。 - Asons