如何仅在表格单元格不为空时显示边框底部(CSS)
我有一个Filemaker计算,它可以生成包含多个表格的HTML页面。如何仅在表格单元格不为空时显示边框底部(CSS)
如果对某些字段中的值的计算结果的结果将是
<table>
<tr><td>Example value 1</td></tr>
<tr><td>Example value 2</td></tr>
...
</table>
如果计算发现没有要显示的值,其结果将仅仅是
<table>
</table>
在第一种情况,我想要表格在底部(或任何其他水平线)显示边框; 在第二种情况下,我不想在底部显示边框。
我无法找到一个方法来完成这件事使用CSS ...
感谢adavance :-)
你可以尽可能接近此,鉴于你不能改变的标记:如果您正在生成多个表,你
table tr:last td { border-bottom: solid 1px blue; }
需要这个(though less-supported):
table tr:last-child td { border-bottom: solid 1px blue; }
虽然在IE6上没有保证。
但是,我强烈建议您不生成一个空表,如果你可以避免它,它是无效的HTML。如果你这样做了,你的CSS也变得更简单了,只是给出这个表:
table { border-bottom: solid 1px blue; }
是不是':最后孩子'?我从来不知道速记,谢谢它,如果它的工作! +1 – alex 2010-03-14 11:55:36
@alex - 是的,如果你生成超过1张桌子,你可以切换到这个桌子,但它支持得不是很好,所以希望它是1张桌子......我会更新 – 2010-03-14 11:57:07
伙计们,非常感谢你为您的快速帮助和意见... @Nick Craver - 感谢您的解决方案。它运作良好! 下面是我的请求的原因:当用户在我的FileMaker解决方案中打开记录时,会生成并显示相应的HTML代码(在这种情况下,计算结果不能存储在FileMaker中)。如果简单的CSS/HTML格式化可以解决问题,我宁愿让发生器做更少的计算工作。但我会坚持不建立空表的建议 - 以避免将来发生麻烦......再次感谢。 – Polarpro 2010-03-14 12:57:24
易于使用JavaScript,但如果它必须是唯一的CSS,怎么样使用标签来放置边界?
<table>
<tr><td>Example value 1</td></tr>
<tr><td>Example value 2</td></tr>
...
<tfoot></tfoot>
</table>
这里举例: http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_tbody
你应该避免做空表。 '
我必须同意,解决这个问题的地方是在你的生成器中,任何只有CSS的解决方案都不会跨浏览器。 – 2010-03-14 11:33:13