javascript - 使用 span 来显示省略号而不是 div
问题描述
我正在尝试使用跨度来溢出文本。
.jdName {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
<td>
<span className="jdName">Some Name with more characters</span>
</td>
这是td
已经固定的宽度。所以,我没有给出跨度。
但它没有为此显示任何省略号。
我必须为此使用 div。任何人都可以帮助我如何使用 span 而不是使用 div 吗?
解决方案
这里有两个因素在起作用。一、<span>
有内联布局;默认情况下,某些 CSS 属性不适用于它。其次,<td>
a<table>
有自己的一套布局怪癖。
通常,如果你给span
一个块布局(设置display
为inline-block
、等)和宽度(除了 之外block
的几乎任何东西),省略号就会生效。 auto
<td>
但是,元素是特殊情况。这在SO question td widths, not working?.
td,
.test-div {
width: 100px;
}
.jdName {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: block;
width: 100%;
border: 1px solid red;
}
<table>
<tr>
<td>
<span class="jdName">Some Name with more characters</span>
</td>
</tr>
</table>
<div class="test-div">
<span class="jdName">Some Name with more characters</span>
</div>
推荐阅读
- c++ - Linux socket read() 无法正确读取响应体
- python - 项目模块导入 - Python2.7 [初学者]
- ms-access-2010 - 访问:DSUM 行为怪异
- excel - MS Excel中的vlookup函数问题
- entity-framework - 未找到 WCF 实体框架 6 SQL 提供程序
- python - 是否可以在python中提取训练好的机器学习模型的公式?
- sql - 没有巧合时如何连接两个表?
- geolocation - 如何计算3D空间中点和线之间的最小距离
- java - ArrayList添加在android中不起作用
- docker - 无法通过 phpmyadmin 访问数据库 - docker