【问题标题】:jquery don't get the real height?jquery 没有得到真正的高度?
【发布时间】:2012-02-23 17:53:16
【问题描述】:

我试图找出为什么 jquery 不能返回 jquery-mobile 标题的实际高度,看这个截图:http://i43.tinypic.com/21epavn.png,标题是 42px 高,jquery 返回

>$('body').find('div[data-role=header]').css('height') 
"40px"

怎么了?

【问题讨论】:

  • .height() 中不包含填充。请改用.outerHeight()
  • @Rob W ~ .outerHeight() 包括填充,是的,但也包括边框宽度(以及可选的边距)。如果您只对包含填充感兴趣,请使用.innerHeight()
  • height -> 40px, innerHeight -> 40px, outerHeight -> 42px (header div 有边框: 1px solid #456F9A; , 无边距, 无内边距)

标签: jquery jquery-mobile height


【解决方案1】:

我猜测(可能是错误的,但我的第一个想法......)元素的高度是 40 像素,然后它周围有 1 像素的边距/填充/边框。尝试在您的 CSS 中指定以下内容:

div[data-role=header] {margin:0;border:0;padding:0}

看看你是否还有这个问题?

根据 Rob W 的说法,jQuery 中有一个 .outerHeight() 函数,它将在其计算中包含填充。如果您不想删除填充,请考虑使用它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多