jquery innerWidth / outerWidth和javascript clientWidth / offsetWidth在chrome

时间:2015-08-17 11:56:24

标签: javascript jquery html css google-chrome

我在<a>内有一个div的HTML标记。 div风格使用'Lato'字体,字体权重为700。

当我尝试获取a代码宽度时,我在chrome中得到错误的值。

我试过了:

width()
outerWidth()
innerWidth()
clientWidth
offsetWidth

他们都给了我错误的价值观。

我还注意到当我删除font-weight css样式时,这个问题就消失了。

任何想法?

由于

1 个答案:

答案 0 :(得分:1)

<a>是一个内联元素。因此它不使用盒子模型。把它想象成&#34;滑溜&#34;。我不确定为什么它可以使用不同的字体重量。

您可能想要测量<a>的第一个块级父级的innerWidth。

类似的东西:

$('<a>').closest('div').innerWidth();

或者,您可以使用css将其设为块,然后您现有的js应该可以工作:

a { display: inline-block; }