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>

ただし、すべてが常に入力されるわけではありません。基本的に、空のスペースを残すだけでnull値が返される場合があります。その空のスペースをできる限り残しておく場合にのみ、非表示にします。ほとんどのブラウザで機能する簡単なソリューションを使用して、その空白スペースを非表示にしますか?

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:propertyStrutsを使用していることを示しています。その場合、テーブルをs:ifタグで囲んで、テーブルをレンダリングするためのデータがあるかどうかを確認できます。

于 2012-10-04T17:51:04.253 に答える