刷新div(导致浏览重绘)

时间:2009-03-24 01:26:12

标签: javascript jquery jquery-ui tabs

在Web应用程序中,我遇到了动态内容的一些问题 - 通过隐藏或显示在jquery ui tab控件上方的表单会导致呈现问题,直到用户将鼠标悬停在选项卡上,然后导致选项卡标题重绘在正确的位置。

它只出现在IE7中,并且作为一个快速黑客我在显示表单导致选项卡的div在IE中刷新后这样做:

$('#tabs').css('display', 'none').css('display', 'block');

我只是想知道是否有一种更合适/更健壮的方法来使div元素重绘/重新计算页面上元素的布局,因为我担心我的方法可能会对其他元素产生不必要的副作用浏览器。

2 个答案:

答案 0 :(得分:4)

狂野猜测,但可能是hasLayout

尝试添加以下内容:

#tabs {
  zoom: 1;
}

答案 1 :(得分:2)

我曾经遇到类似的问题,结果显示宽度未在显示div上设置。当我在它工作的元素上设置静态px宽度时。