【发布时间】:2015-12-26 21:12:41
【问题描述】:
我正在尝试找到一种使用 flexbox 重新创建 colspan 的方法。
这是我想要实现的一个简单示例:https://jsfiddle.net/4b63b1ze/
<table style="width: 100%">
<tr>
<td rowspan="2">azerty</td>
<td colspan="2">azerty</td>
<td rowspan="2">azerty</td>
</tr>
<tr>
<td>azerty</td>
<td>azerty</td>
</tr>
</table>
这是我目前所拥有的:https://jsfiddle.net/pudxj9sy/
html:
<div class="container">
<div class="item">azerty</div>
<div class="item">
azerty
<div class="item">azerty</div>
<div class="item">azerty</div>
</div>
<div class="item">azerty</div>
<div class="item">azerty</div>
</div>
风格:
.container {
border: 1px solid red;
display: flex;
}
.item {
flex-grow: 1;
flex-basis: 0;
border: 1px solid gray;
}
所以理论上我必须将第二项的flex-grow设置为2。但是由于内容是动态添加的,我不想依赖通过js/jQuery添加样式属性。
只有通过css有可能吗?
【问题讨论】:
-
目前我没有时间创建你想要的,但你可以检查
flex-direction和order关键字。 -
不是没有重构html 和使用
flex-grow:2来设置中间列的宽度。如果想要列效果,就得使用列属性,
标签: html css html-table flexbox