Range.getClientRects()メソッドはClientRect占有者のリストを返しrangeます。これは、範囲がテキストを含む通常のスパン内にある場合にうまく機能します。
<div class="line">
<span class="run">Hello!</span><span class="run"></span>
</div>
ClientRectただし、スパンが空の場合は取得に失敗します。(2番目のスパンのように)
以下のことを試してみましたが、満足のいく結果ではありませんでした。
- スパンの表示プロパティを
inline-block '\ufeff'スパンに挿入します。この場合、取得できますClientRectが、これによりコードの他の部分が台無しになります。
から行の高さを計算できればfont-size、それが最適です。空のスパンの行の高さを px で取得する方法はありますか?
注:line-height css プロパティを取得しようとしているわけではありません。この場合、 はline-heightになりますnormal。