Html firefox中scrollHeight在div上的奇怪行为,带有填充和溢出:auto

Html firefox中scrollHeight在div上的奇怪行为,带有填充和溢出:auto,html,firefox,scrollbar,padding,Html,Firefox,Scrollbar,Padding,在这里 拉拉 拉拉 var d=$(“#div1”); 对于(变量i=0;i

在这里


拉拉
拉拉
var d=$(“#div1”);
对于(变量i=0;i<5;i++){
console.log(d.height(),d[0].scrollHeight);
d、 高度(d.高度()-1);
}
有一个带填充和溢出的div:auto。在firefox中,div的scrollHeight值有一种奇怪的行为。当我们将div的高度设置为小于其原始高度时,很自然地期望滚动条立即出现,并且滚动高度值保持不变。Chrome适合这些体验,但不适合firefox,最后一个不绘制滚动条,当原始高度的偏差小于div的填充时,减少底部填充和滚动高度


这是一个bug吗?这个“bug”有没有修复方法?

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

有关于这个行为的文档吗?使用overflow-y:auto更改元素高度后,我的滚动高度不一致
<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);
}