0

下图是我所面临问题的简化版本。两者都是手工编码的#custom#ext-ct一个 ExtJS 组件被渲染为#ext-ct. 然后#custom切换播放其displayCSS 属性。在 IE7 中,显示#custom会导致组件粘在其初始位置,而隐藏#custom会导致组件向上移动。

我试图在 jsFiddle 中重现此错误,但未成功。我已经知道大名鼎鼎的“hasLayout”概念,所以我尝试过申请zoom:1#custom然后我尝试了这个解决方案仍然没有成功。有没有人遇到过这种情况?是否有一个简单的修复方法来强制组件粘在它的容器上?

在此处输入图像描述

4

1 回答 1

1

我发现了一个丑陋的修复,每次#custom切换时我都会运行下面的代码:

if (Ext.isIE7) {
    Ext.get('custom').setStyle('zoom', 0);
    Ext.get('custom').setStyle('zoom', 1);
}

在找到更好的解决方案之前,我不会回答这个问题。

于 2013-03-15T15:07:53.650 回答