我在使用
进行内联块元素时遇到问题width: auto;
并使用javascript以编程方式更改高度。
这是一个演示它的jsFiddle;
这个想法是,如果你调整窗口大小,javascript会设置元素的高度,并且内嵌块元素的宽度会自动调整以适应内容。
但是,宽度不会自动更新,而是保持原始宽度,而不是调整大小以匹配内容的宽度。
如果通过隐藏和显示元素或更改显示样式e.t.c来使dom刷新。宽度更新了!
请参阅此修改过的jsfiddle;
这一个在chrome上,现在强制宽度:auto;为了启动和工作,在Firefox上似乎仍然没有更新。
这样设置时宽度不会更新的原因是什么?
此致
答案 0 :(得分:0)
您可以通过获取子项的宽度,将元素的宽度与高度一起设置为width:auto
的预期值:
$('#myul li').css('width',$('#myul li').children().width() + 2); // compensate for border
JSFiddle:http://jsfiddle.net/uJZjB/4/