0

在 jquery 中,当我们这样做$(elem).height()或者.width()为什么我们要以像素为单位进行测量时,
即如果 elem 高度设置为 200 像素,那么我们得到 200
,如果我们将 elem 高度设置为 20%(比如说它是 200 像素),那么我们也得到 200

4

4 回答 4

6

jQuery 文档

.css('height') 和 .height() 之间的区别在于后者返回一个没有单位的像素值(例如,400),而前者返回一个单位完整的值(例如,400px)。

于 2012-05-16T12:47:55.097 回答
3

它是返回的最合乎逻辑的单位 - 大多数其他单位都是相对的(ems,百分比)。此外,这也是浏览器在内部处理维度的方式。

于 2012-05-16T12:47:47.483 回答
1

像素是测量确切数量的标准方法。任何没有单位的数字都是没有意义的。如果我告诉你你的字体是 20% 的高度,这对你意味着什么?没有什么。您需要知道它是 pt、em 还是 px,它们是可用的绝对单位。像素是如何测量的黄金标准,因为其他像素与字体大小和其他考虑因素有关。

于 2012-05-16T12:50:01.697 回答
1

发生这种情况是因为width()height()返回计算的宽度/高度(由浏览器计算,以像素为单位),而不是您在 css 中设置的值(inem%其他)

于 2012-05-16T12:48:19.477 回答