我有一个从MySQL动态填充的表。该表已应用以下CSS
.table th,
.table td {
padding: 8px;
line-height: 18px;
text-align: left;
vertical-align: top;
border-top: 1px solid #dddddd;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
我也有一个定义的宽度:
<td style="width: 100px">Some Stationers & Printers , Yamunanagar</td>
我希望这看起来像Some Stationers & Pr...
我不知道我在这里做错了什么,任何建议都将不胜感激!
已经测试过的浏览器是Safari和Chrome,所以只是webkit!
答案 0 :(得分:4)
text-overflow仅适用于块元素(也称为display: block
)元素。
您必须将内容包装在<td>
中以使该属性生效,如下所示:
<td>
<div style="text-overflow: ellipsis; overflow: hidden">
Some Stationers & Printers , Yamunanagar
</div>
</td>
(如果您无法触摸标记,可以使用JS自动执行此操作。)
答案 1 :(得分:1)
.table th,
.table td {
background:#eee;
padding: 8px;
line-height: 18px;
text-align: left;
vertical-align: top;
border-top: 1px solid #dddddd;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
float:left; // added
}
答案 2 :(得分:0)
你好,你只需在你的td css中添加display:block
<强> CSS 强>
table th,
table td span{
padding: 8px;
line-height: 18px;
text-align: left;
vertical-align: top;
border: 1px solid green;
white-space: nowrap;
float:left;
text-overflow: ellipsis;
width:100px;
overflow:hidden;
}
<强> HTML 强>
<table><tr>
<td><span>Some Stationers & Printers , Yamunanagar</span></td></tr></table>