2015-11-20 22 views
2

我最近添加了一个简单的ZK ThemeProvider,它添加了一些CSS文件,其工作正常,但似乎有一个奇怪的副作用...我的索引页面看起来像这样...ZK ThemeProvider设置包含元素样式宽度100%

<?page id="iframe" title="${labels.title}"?> 
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?> 
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver" ?> 
<zk> 
    <include src="/zk/content/outerContainer.zul" id="outerContainer" sclass="outerContainerLayout" apply="com.example.RootComposer"/> 
</zk> 

但不知何故,ZK最终将这种风格到包括-DIV ...

style="width:100%;height:100%;" 

的100%的宽度和高度是不正确的,但我不知道是哪里来从。有趣的是,它只发生在包括 - 不包括跟随。除此之外,当我尝试将这个东西包装到另一个包含中时 - 都获得100%,但仍然不是包含在层次结构中的包含。

任何一个想法,其中zk增加了这种奇怪的风格?

回答

1

的解决方案是在documentation

如果此成分是它的父的唯一子,缺省宽度 和高度将变成100%。

不知何故,这似乎只发生在使用ThemeProvider(或之前有一些其他副作用阻止它)。不管怎么说,增加一个(隐藏)空格到我的索引页解决了这个问题:

<?page id="iframe" title="${labels.title}"?> 
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?> 
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver" ?> 
<zk> 
    <include src="/zk/content/outerContainer.zul" id="outerContainer" sclass="outerContainerLayout" apply="com.example.RootComposer"/> 
    <div sclass="hidden"/> <-- Cannot have a poor, sad, alone include --> 
</zk> 

现在包括-DIV的风格是空的,因为它应该是。