【问题标题】:jQuery .css('margin-left') gives "auto" back in IE7 and IE8jQuery .css('margin-left') 在 IE7 和 IE8 中返回“auto”
【发布时间】:2012-10-27 07:26:19
【问题描述】:

我正在尝试获取元素的左边距值。这在 Chrome、FireFox 和 IE9 中运行良好,但在 IE7 和 IE8 中我得到“自动”返回:

alert($('#'+page+'menubuttoncontainer').css('margin-left').replace('px', ''));

我怎样才能得到一个数字而不是“自动”?

【问题讨论】:

标签: javascript jquery css


【解决方案1】:

.css 返回 CSS 的值。

为了获得位置,你应该使用偏移函数:http://api.jquery.com/offset/

或者位置函数:http://api.jquery.com/position/

【讨论】:

  • 您能进一步解释一下吗?我不明白我怎么能用这个来获得左边距。
  • 你不会得到margin-left,因为这个值实际上是不存在的(你在你的样式表中设置了auto)。你会得到一个顶部/左侧的对象作为回报,这样你就可以推断出你的盒子的位置。虽然,就像之前有人告诉过的(但似乎已经删除了他的 cmets),但如果这在您的用例中更有意义,您也可以检查 .position()。 Position 将返回相对于父块的位置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-15
  • 2015-06-11
  • 2011-11-04
  • 1970-01-01
  • 2011-01-27
  • 1970-01-01
  • 2017-08-03
相关资源
最近更新 更多