这是我之前的问题的后续问题。我正在尝试找到一种方法来查找元素中每一行文本的确切位置。
我能够找到 csslineHeight
属性(请参阅上一个答案)。问题是我的元素的高度略大于行数的累积高度乘以lineHeight
.
一个例子:
我有一个<p>
没有填充、边框或边距的 2010 像素高(scrollHeight
, offsetHeight
,并且clientHeight
所有报告都相同),并且在浏览器中有 89 行。是22 lineHeight
。computedStyle()
2010 / 22 = 91.37 行
对于小元素,我可以将值设置为底值以获得正确的行数,但是在较大元素的情况下遇到上述问题,我无法准确地获得确切的行数。
我的假设是我没有考虑这些文本行之间的一些小空间。知道如何找到它吗?它与字体类型有关吗?是浏览器自动设置的吗?任何文档都会特别有帮助。
谢谢!!
更新:
所以我有 26 个上标<p>
,每个上标突出 2px,将lineHeight
它们出现的那些行的 24px 延伸到 24px,这占了我缺少的空间。(Woot!到目前为止谢谢!)
我想我现在所处的船是我需要找到一种方法来动态计算它们在正常基线上方突出多少,或者发现 a 的基线<sup>
比正常基线高多少。(反之亦然<sub>
。)否则,我可以用 CSS 确定吗?