5

以下有什么区别吗?

$(elem).css({ height : 100 })

$(elem).css({ height : 100+'px' })

我在谷歌搜索了很长时间,但没有找到答案。在 jquery.com 上有 px 和整数值的示例......浏览器或操作系统有什么不同吗?

4

1 回答 1

8

jQuery 自动将单位“px”(作为默认单位)添加到大多数 css 属性的所有数字,包括“高度”:

请参阅src/css.js中的第 221 行

// If a number was passed in, add 'px' to the (except for certain CSS properties)
if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
    value += "px";
}

!jQuery.cssNumber[ origName ]不包括以下 CSS 属性:

  • 列数
  • 填充不透明度
  • 字体重量
  • 线高
  • 不透明度
  • 孤儿
  • 寡妇
  • z索引
  • 飞涨

(旁注:如果您一开始像我一样对排除“lineHeight”感到惊讶:没有单位的数字将乘以当前字体大小以设置行高- 所以属性存在差异' line-height' 当你指定/省略单位时)

于 2013-04-01T16:48:00.550 回答