我遇到一个问题,zk 3.6.3正在为<tbody>
呈现第二个Listbox
标记。实际上,第一个呈现的<tbody>
标签是让我遇到问题的标签。它的css样式设置为visibility:hidden;height:0px
,Opera 12和IE 11为它渲染了一个大的空白空间。所以在浏览器中我看到了表头,这是一个空的空格,然后是列表框的实际行。
zkoss渲染的有问题的代码包含在第53-63行的org.zkoss.zkmax.zul.render.ListboxDefault
中。
如何防止zkoss或浏览器呈现此空白区域?
答案 0 :(得分:2)
嗯,总有一个解决方案,也许“黑客”解决方案在这里是最好的:
该班级的班级重写。
如果删除无效,请尝试更改样式,...
另一方面,如果可以更新ZK版本,你应该试试。
您使用的版本较旧,不支持较新的浏览器。
答案 1 :(得分:1)
第一个tbody
包含列表标题(不,我不知道他们为什么不使用thead
)。如果你没有在列表中添加一个,那么CSS visibility:hidden;height:0px
应该使它在屏幕上不可见,这对我有用。
我的猜测是,在应用程序的某个地方,你有CSS规则覆盖这种风格。因此,下一步是启动Web开发人员工具并检查实际应用的CSS样式。
或者,您可以为列表框指定自定义类setSclass("hiddenheader")
,然后像这样使用CSS:
table.hiddenheader tbody:first-child { display: none; }
(注意:我没有对此进行测试; ZK可能会为样式添加一些前缀,因此您可能需要调整代码,但示例应该让您入门。)