【发布时间】:2013-04-06 18:02:03
【问题描述】:
我找不到匹配的答案。
<table class="table1">
<tr>
<td class="red header" colspan="4">
Table1 header</td>
</tr>
...
<tr>
<td class="red footer" colspan="4">Footer</td>
</tr>
<table class="table2">
<tr>
<td class="red header" colspan="4">
Table2 header</td>
</tr>
...
<tr>
<td class="red footer" colspan="4">Footer</td>
</tr>
table {
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
border: 1px solid #000;
}
.table1 {
border-spacing: 0;
}
.table2 {
border-collapse: collapse;
}
.footer {
-moz-border-bottom-right-radius: 5px;
-webkit-border-bottom-right-radius: 5px;
border-bottom-right-radius: 5px;
-moz-border-bottom-left-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
border-bottom-left-radius: 5px;
}
.header {
-moz-border-top-right-radius: 5px;
-webkit-border-top-right-radius: 5px;
border-bottom-top-radius: 5px;
-moz-border-top-left-radius: 5px;
-webkit-border-top-left-radius: 5px;
border-top-left-radius: 5px;
text-align: center;
}
td {
border: 1px solid #000;
}
如您所见,table1 有 2px 边框(我想要 1px),table2 没有圆角边框。 border-collapse:collapse; 修复了由 border-spacing: 0; 引起的第一个问题,但打破了四舍五入。谁能告诉我一种方法来解决这两个问题而不会弄乱:first-child、last-child 等选择器?
【问题讨论】:
-
顺便说一句,这不是你做表格页眉或页脚的方式。
thead、tfoot、tbody、caption和th等元素具有语义含义,应该用于平淡无奇的 colspanned td。 -
我正在为 MyBB 做这件事,它只在默认皮肤中使用 thead 和 tbody,甚至在所有表格中都没有。需要一段时间才能将所有内容转换为那些。所以我希望有一个终极的 CSS 或 JS 解决方案。
标签: html css html-table border-spacing