<div className="container">
<div className="left-area">
<div className="container2">
<table>
<tbody>
<tr>
<td>
48148581581581858158158iffjafjadjfjafdjafdjfjadfjdjafdjafdjajdfjadfjdafjdajfajfdjaf
</td>
<td>1/1/0001</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
我想截断很长的文本。
.container {
margin-top: 20px;
width: 90%;
display: flex;
.left-area {
flex: 1 1 20%;
.container2 {
flex: 1 1 20%;
table {
width: 100%;
}
}
}
}
我尝试在td cell
上使用此CSS
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
答案 0 :(得分:4)
缺少的密钥是table-layout: fixed
。
table {
width: 100%;
table-layout: fixed;
}
td {
width: 50%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
<table>
<tbody>
<tr>
<td>
48148581581581858158158iffjafjadjfjafdjafdjfjadfjdjafdjafdjajdfjadfjdafjdajfajfdjaf
</td>
<td>1/1/0001</td>
</tr>
</tbody>
</table>
通过table-layout: auto
(默认设置),浏览器使用自动布局算法来检查内容大小以设置单元格(以及列)的宽度。
在这种情况下,width
和overflow
属性将被忽略,省略号将不起作用。
使用table-layout: fixed
,您可以定义第一行中单元格的宽度(因此,可以设置表格的列宽)。
在这种情况下,将使用width
和overflow
属性,从而允许省略号功能起作用。
https://developer.mozilla.org/en-US/docs/Web/CSS/table-layout