【发布时间】:2017-11-22 16:31:25
【问题描述】:
我有一个跨度在一个带有文本溢出集的 div 中:
<div id="parent" style="width: 50px; overflow: hidden; text-overflow: ellipsis;">
<span id="child">exampleasdaadasdsfdgs</span>
</div>
当我尝试获取跨度中文本的宽度时,我尝试了:
$("#child").width();
在大多数浏览器中它都可以工作,但在 IE 11(可能更多)中却不行。 当我删除“文本溢出:省略号;”它显示了正确的文本长度。
我做了一个fiddle 进行测试。
除了获取文本的长度并将其与字体大小相乘之外,是否有一种很好的(并且不会变慢)方法来获取 IE11 的宽度?
【问题讨论】:
-
只有在使用等宽字体时才能获取文本长度并将其乘以字体大小
-
这是 IE 中的一个错误,但对于这种特殊情况,您可以读取父级的
scrollWidth值,它将输出其内容的宽度(即您的跨度)。 jsfiddle.net/em9jap8f
标签: javascript jquery html css internet-explorer-11