如何根据字体大小计算字符宽度。

时间:2017-05-09 15:58:09

标签: javascript html css

我试图计算适合div的一行的字符数,然后修剪其余部分尽管text-overflow是一个选项我宁愿计算正确适合它的字符串的长度。字符的字体大小是否几乎等于它的宽度,如果不是,你如何计算它的宽度,包括文本间距和空格的宽度。

P.S。 - 在标记这个问题之前,请知道我已经完成了大部分问题和答案,但没有一个能够令人满意。

1 个答案:

答案 0 :(得分:0)

我要做的一种方法是检查div中是否有足够的空间。要做到这一点,你需要创建一个相同的div并从克隆的div中慢慢删除一个字符,直到原始div的宽度大于或等于克隆的div。

divClone.textContent = text
document.body.appendChild(divClone)
while(divClone.clientHeight > originalDiv.clientHeight) {
    divClone.textContent = divClone.textContent.substring(0, divClone.textContent.length-1)
}
originalDiv.textContent = divClone.textContent

然后,您可以在完成后删除克隆的div