CSS表 - 添加边距列和行边框底部

时间:2016-11-15 07:25:21

标签: html css html-table css-tables

我有一个HTML表格元素,我正在尝试在列之间添加边距,所以我使用了那些css属性:

table {
 border-collapse: separate;
 border-spacing: 36px 0px;
}

现在我想在标题和正文中的每个tr中添加border-bottom到整行,但边框不会出现。 我用过:

tr {
 border-bottom: 1px solid blue;
}

只有在我使用时才出现:

table {
 border-collapse: collapse;
}

然后我不会在列之间留有余量。

我添加了DEMO here

1 个答案:

答案 0 :(得分:3)

您可以使用:after伪类对其进行样式设置,如下所示:

body {
  background: #eee;
}

.mytable{
  border-collapse: separate;
  background-color: white;
  border-spacing: 36px 0px;
  position: relative;
  overflow: hidden;
}

.mytable td,
.mytable th {
  border-left: 1px solid black;
  border-right: 1px solid black;
}

.mytable th:after,
.mytable td:after {
  position: absolute;
  background: blue;
  margin-top: 18px;
  content: '';
  height: 1px;
  right: 0;
  left: 0;
}
<table class="mytable">
  <thead>
    <tr>
      <th>aaa</th>
      <th>bbb</th>
      <th>ccc</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>ddd</td>
      <td>eee</td>
      <td>fff</td>
    </tr>
    <tr>
      <td>ggg</td>
      <td>hhh</td>
      <td>iii</td>
    </tr>
  </tbody>
</table>