2

我的 JSP 中有一个表格,当页面生成时有空,我想知道是否有一种方法可以让我仅在它们没有实际文本的情况下隐藏它们,这就是它们的样子。

<TABLE border="1" style="empty-cells:hide;padding-left:4px">
<TR>
    <TD><s:property value="barfoo"/></TD>
    <TD align="center"><s:property value="foo"/></TD>
    <TD align="center"><s:property value="bar"/></TD>
    <TD align="center"><s:property value="foobar"/></TD>
</TR>
<TR>
    <TD><s:property value="barfoo"/></TD>
    <TD align="center"><s:property value="foo"/></TD>
    <TD align="center"><s:property value="bar"/></TD>
    <TD align="center"><s:property value="foobar"/></TD>
</TR>
<TR>
    <TD><s:property value="barfoo"/></TD>
    <TD align="center"><s:property value="foo"/></TD>
    <TD align="center"><s:property value="bar"/></TD>
    <TD align="center"><s:property value="foobar"/></TD>
</TR>
<TR>
    <TD><s:property value="barfoo"/></TD>
    <TD align="center"><s:property value="foo"/></TD>
    <TD align="center"><s:property value="bar"/></TD>
    <TD align="center"><s:property value="foobar"/></TD>
</TR>
</TABLE>

但问题并不是所有这些都会一直被填写,有时它们基本上会返回空值,只是留下一个空白空间,我只想隐藏它们,只有当他们要以任何方式离开那个空白空间时使用适用于大多数浏览器的简单解决方案来隐藏该空白区域?

4

3 回答 3

9

你可以使用 css:empty pseudo-class

tagname:empty {
 display: none;
}

这样pseudo-class式空元素...

在你使用它之前确保它还没有得到广泛的支持,很可能 IE 会导致问题

于 2012-10-04T16:43:21.497 回答
0

我认为您可以使用 CSS 属性 empty-cells 执行此操作,如下所示:

table {
  empty-cells:hide;
}
于 2012-10-04T16:42:38.400 回答
0

的使用s:property表明您正在使用 Struts。在这种情况下,您可以用标签包围您的表格,s:if以检查是否有数据可以用来呈现表格。

于 2012-10-04T17:51:04.253 回答