在Chrome中"正常"时查找行高的像素值

Tom*_*man 6 javascript jquery

我有一个textarea,其行高设置为"正常".但是,我仍然可以在FireFox中获得实际的像素值:

// firefox
>>> $("#post_body").css('line-height')
"19.1167px"
Run Code Online (Sandbox Code Playgroud)

虽然我不能在Chrome中:

// chrome
>>> $("#post_body").css('line-height')
"normal"
Run Code Online (Sandbox Code Playgroud)

如何在Chrome中获得实际像素行高?

小智 -6

行高值是一个数字。该数字表示当前节点字体大小的乘积。如果当前节点的字体以 em 或 ex 单位测量,并且是从多个继承层设置的,但在当前节点没有明确说明,则情况会更复杂。这是最坏的情况。在这种情况下,您必须注入一个小写“m”字符并使用 clientWidth 属性测量其像素宽度,然后将其删除。

  • 当“line-height”为“normal”(这是此 CSS 属性的合法值)时,该问题适用。所以这个以“行高值是一个数字”开头的答案在这里不适用。我强烈建议你删除它。 (2认同)