以下代码,在所有浏览器中 - 除了谷歌Chrome最新的PC - 在tbody表格单元格上显示边框,如CSS中所指定。
Chrome PC,显示thead边框,但不显示TD边框。为什么?这是Chrome或我的HTML / CSS中的错误吗?
继承人jsFiddle复制它:
<table width="505" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td>Testing</td>
<td>123</td>
</tr>
<tr>
<td>Testing</td>
<td>456</td>
</tr>
</tbody>
<thead>
<tr>
<th>foo</th>
<th>bar</th>
</tr>
</thead>
table {
width:736px;
border-collapse: collapse;
thead {
border-top: 2px solid #aaaaaa;
tr {
th {
border: 0;
padding: 12px 5px;
}
}
}
tbody {
border-top:0;
tr {
td {
padding: 10px 5px;
border-top: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
}
答案 0 :(得分:5)
尝试在 thead 之后加上 tbody 。
<强> HTML 强>
<table width="505" cellspacing="0" cellpadding="0" border="0">
<thead>
<tr>
<th>foo</th>
<th>bar</th>
</tr>
</thead>
<tbody>
<tr>
<td>Testing</td>
<td>123</td>
</tr>
<tr>
<td>Testing</td>
<td>456</td>
</tr>
</tbody>
</table>
来自MDN:
thead - 一个表格元素。 thead必须出现在任何标题或colgroup元素之后,甚至隐式定义,但之前任何tbody,tfoot和tr元素。
答案 1 :(得分:1)
移除border-collapse: collapse
并使用border-top
TD
和border-bottom
TABLE
。
答案 2 :(得分:0)
试试这个。
table {
width:736px;
border-collapse: collapse;
}
thead {
border-top: 2px solid #aaaaaa;
}
th {
border: 0;
padding: 12px 5px;
}
tbody {
border-top:0;
}
td {
padding: 10px 5px;
border-top: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
答案 3 :(得分:0)
我有一张使用-webkit-backface-visibility:hidden;
的表,它隐藏了边框颜色,所以为了修复我使用的-webkit-backface-visibility:visible;
。