我一直在寻找一种方法来获取未四舍五入的元素的宽度。想要这样做的原因是我有几个元素随着 display inline-block 向左浮动,我试图自动调整其中的文本大小,以便它们用完容器 div 的整个宽度。我是这样做的:
- 选择较小的文字大小,例如 1
- 将所有文字设为该尺寸
- 将所有 float 元素的宽度相加
- 如果小于容器的宽度,则将字体大小增加一个小值
- 重复 2-4 直到达到最大尺寸
问题是总是有未使用的剩余空间。我相信这是因为当我少量增加字体大小(即 0.01)以获得准确的大小时。元素的宽度不会改变,因为它是向下舍入的。我可以继续递增,它们不会改变,直到它决定四舍五入然后总宽度超过限制。这是一个 JSFiddle 显示我在说什么:
javascript 可能有点困惑,但基本上是为了节省时间,它从较大的字体大小增量开始,然后当它达到目标大小时,它会使增量更小以更准确。
我试过使用:
$(this).width()
parseFloat($(this).css("width"))
window.getComputedStyle
但它们似乎都不起作用。
最佳答案
关于jquery - 在 jQuery 中获取元素的宽度作为 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13852747/