无法以编程方式设置div的最大高度

时间:2015-10-29 14:22:47

标签: javascript html css layout

我正在尝试创建一个动态布局div(从上到下100%宽),可以打开和关闭,我不希望内容超出页面底部,所以当打开/关闭状态更改我运行这样的代码:

// BUG: maxHeight exists in the DOM but apparently cannot be programatically set
e.style.maxHeight = h;
alert('Element ' + e.id + ' was set to have a maxHeight of ' + h + ' but actually has a maxHeight of ' + e.style.maxHeight + '.');

警报始终显示最大高度无变化,无论其初始值如何。这恰好是在div上。所有元素都具有块的显示样式。调试器没有显示异常。发生在Chrome,IE和Firefox上。通过样式字符串设置max-height是没有问题的。 我也没做任何花哨的CSS,比如浮动,位置或边框的东西。 我在这里看到的其他相关答案似乎表明这应该有用。

1 个答案:

答案 0 :(得分:3)

与JS中的所有维度值(高度,宽度,顶部,底部等)一样,值(在这种情况下为h)必须具有为此工作定义的单位:

e.style.maxHeight = h + "px";

JSFiddle Demo