2015-11-20 35 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的風格是空的,因爲它應該是。