0

我的问题与 zkoss 和 Java 端动态添加的组件有关。

每当我在任何元素上使用 appendchild(比如在 Div 上)时,它总是添加一个额外的 Div 作为某种容器。这是为什么?

例如,这里是 Composer 类的一部分:

...
@Wire("div#myDiv")
private Div testDiv;
...
...
Label myLabel = new Label();
myLabel.setValue("Test");
myLabel.setClass("test-label");
testDiv.appendChild(myLabel)

所以代替这个:

<div id="myDiv">
 <span class="test-label">
...
</span>
</div>

我得到这样的东西:

<div id="myDiv">
 <div id="hj973"> <!--this is the extra div -->
 <span class="test-label">
...
</span>
 </div>
</div>

在大多数情况下,这不是问题,除非我尝试将跨度用作带有浮动的网格,因为那样当然那个 div 不应该在那里。

为什么是这样?我该如何预防?

4

1 回答 1

0

我不知道为什么有一个额外的 div,但你可以写

test-label:parent {
 ...
}

在您的 css 文件中,因此外部 div 的行为方式与您的跨度
现在应该执行的方式相同,而只是忽略跨度。

如果这没有帮助,我稍后再检查,我现在没有时间。

于 2013-02-06T12:54:00.033 回答