Answers:
您甚至不必为单元格设置特定的宽度,table-layout: fixed
足以均匀地分布单元格。
ul {
width: 100%;
display: table;
table-layout: fixed;
border-collapse: collapse;
}
li {
display: table-cell;
text-align: center;
border: 1px solid hotpink;
vertical-align: middle;
word-wrap: break-word;
}
<ul>
<li>foo<br>foo</li>
<li>barbarbarbarbar</li>
<li>baz</li>
</ul>
请注意,
table-layout
要使用表格样式元素,必须设置宽度(在我的示例中为100%)。
word-wrap:break-word
正如我刚刚发现的那样,将解决此问题
只需使用百分比宽度和固定的表格布局即可:
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</table>
与
table { table-layout: fixed; }
td { width: 33%; }
固定表格布局很重要,因为如果内容不适合,浏览器将调整其认为合适的宽度,即,如果不是固定表格布局,则宽度不是一个建议。
显然,调整CSS使其适合您的情况,这通常意味着仅将样式应用于具有给定类或可能具有给定ID的表。
td
因为您可能具有动态的列数…并且它不需要它就可以工作。
使用table-layout: fixed
作为用于属性table
和width: calc(100%/3);
为td
(假设有3 td
的)。设置了这两个属性后,表格单元的大小将相等。
请参阅演示。