3

在这里,http://jsfiddle.net/YNKws/

<div id="div1" style="padding: 2px; overflow: auto;">
  <div style="height:30px;">lalala</div>
  <div style="height:30px;">lalala</div>
</div>

var d = $("#div1");
for (var i = 0; i < 5; i++) {
  console.log(d.height(),d[0].scrollHeight);
  d.height(d.height() - 1);
}

有填充和溢出的div:自动。在 Firefox 中,div 的 scrollHeight 值有奇怪的行为。当我们将 div 的高度设置为小于它的原始高度时,很自然地期望滚动条立即出现并且 scrollHeight 值保持不变。Chrome适合这些期望但不适合firefox,最后一个不绘制滚动条,当原始高度的偏差小于div的padding时减小底部填充和scrollHeight。

它是一个错误吗?这个“错误”是否有修复?

4

1 回答 1

2

Firefox 的行为是 CSS 规范所要求的:用溢出填充事物本身不会导致溢出。

于 2013-02-15T18:49:03.277 回答