-1

我有两个 div 元素,一个环绕另一个。然后我使用 JavaScript 在运行时为外部 div 添加边框。以某种方式,基于 webkit 的浏览器在更改外边框时不会进行重排。最终结果看起来很丑 - 内部 div 溢出外部。这是 HTML 代码: [div id="outer][div id="inner" style="border: solid blue; 高度:50px;"][/div][/div]

事件处理程序也很简单: document.getElementById("outer").setAttribute("style", "border:solid green")

当我发现这一点时,我简直不敢相信,因为这是一项微不足道的回流任务。还是我错过了什么?有没有人遇到类似的问题,有什么解决方法?谢谢。

4

2 回答 2

0

border: solid green没有说明任何尺寸,例如:"border:1px solid green"

我认为重置整个属性并不安全,style因为您可能会搞砸其他一些事情。尝试向 中添加一个类className,这样会更简洁一些。

于 2010-08-06T15:28:03.553 回答
0

如果将外部和内部设置为 float:left 它将按计划工作。但是,您要么需要给它一个固定的宽度,要么在 div(内部)中包含内容。

#outer { float: left;}
#inner { float: left;}

[div id="outer"][div id="inner"]文本[/div][/div]

于 2010-08-11T16:36:13.810 回答