出于某种原因,我尝试过设置<tbody>
样式,但是无论我提取多少现有样式,
从理论上讲,以下内容应该有效,但不能...
tbody {
border: 1px solid #2696A1;
width: 100%;
border-spacing: 0px;
margin-top: 2px;
margin-bottom: 2px;
page-break-inside: avoid;
border-collapse: collapse;
}
<table>
<tbody>
<tr>
<td>Test</td>
<td>Test</td>
</tr>
<tr>
<td>Test</td>
<td>Test</td>
</tr>
<tr>
<td>Test</td>
<td>Test</td>
</tr>
</tbody>
</table>
最终目标(除非出现更好的建议)是用边框包裹<tbody>
两个<tr>
以便它们在视觉上可以识别在一起。顶部<tr>
始终可见,但第二个(或更多)不可见(由于 jQuery 切换了附加信息)。通常我会把它包装在一个<div>
中并称之为一天,但我需要这个动态表的标题中的表格格式,以便所有内容都保留在适当的列中,不会漂流到梦幻岛。
任何想法或建议都很棒。
我认为将边界定义为虚拟方式并增加人类可读性。但是,您可以使用td棘手的方式来实现目标,而不是样式tbody。甚至 tr 也不是应用样式的好地方。您应该定位td,th等。请尝试以下方式应用边框:
table {
width: 100%;
border-spacing: 0px;
margin-top: 2px;
margin-bottom: 2px;
page-break-inside: avoid;
border-collapse: collapse;
}
tbody > tr:first-child > td {
border-top: 1px solid #2696A1;
}
tbody > tr > td:first-child {
border-left: 1px solid #2696A1;
}
tbody > tr > td:last-child {
border-right: 1px solid #2696A1;
}
tbody > tr:last-child > td {
border-bottom: 1px solid #2696A1;
}