我有一个页面,用户可以在其中动态添加文件上传框。添加框会更改它们所在的 div 的高度,但其下方的 div 的某些元素保持在同一位置,因此它们开始与新的 DOM 元素重叠。
这在 IE8、Firefox、Chrome 中可以正常工作。如何强制 IE7 使用新的 DHTML 重排页面?
我找到的最好的解决方案是这样的:
window.resizeBy(1, 0);
setTimeout(UndoResize, 0);
但它不适用于最大化的窗口(它会恢复窗口)。
Try:
element.className = element.className;
在修改后的 div 上(或者可能是它的父级,甚至是更远的祖先,取决于各种因素,例如相对定位的包含)。
As the className
已分配一个值,如果影响该元素的 CSS 发生更改,IE 将回流并重新绘制页面的该部分。幸运的是,它没有优化来检查是否className
value 实际上比之前的值发生了变化,因此上面的代码将触发回流而不会破坏其他任何内容。
我确实发现有一次这个修复了 IE6 但破坏了 IE7,但是尝试一下,看看它是否适合你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)