Estou tentando criar alguns HTML / CSS que podem colocar uma borda em torno de linhas específicas em uma tabela. Sim, eu sei que não devo usar tabelas para layout, mas ainda não conheço CSS suficiente para substituí-lo completamente.
De qualquer forma, tenho uma tabela com várias linhas e colunas, algumas mescladas com row e colspan, e gostaria de colocar uma borda simples em torno das partes da tabela. Atualmente, estou usando 4 classes CSS separadas (superior, inferior, esquerda, direita) que anexo às <td>
células que estão ao longo da parte superior, inferior, esquerda e direita da tabela, respectivamente.
.top {
border-top: thin solid;
border-color: black;
}
.bottom {
border-bottom: thin solid;
border-color: black;
}
.left {
border-left: thin solid;
border-color: black;
}
.right {
border-right: thin solid;
border-color: black;
}
<html>
<body>
<table cellspacing="0">
<tr>
<td>no border</td>
<td>no border here either</td>
</tr>
<tr>
<td class="top left">one</td>
<td class="top right">two</td>
</tr>
<tr>
<td class="bottom left">three</td>
<td class="bottom right">four</td>
</tr>
<tr>
<td colspan="2">once again no borders</td>
</tr>
<tr>
<td class="top bottom left right" colspan="2">hello</td>
</tr>
<tr>
<td colspan="2">world</td>
</tr>
</table>
</html>
Existe alguma maneira mais fácil de fazer o que eu quero? Tentei aplicar a parte superior e inferior de um, <tr>
mas não funcionou. (ps Eu sou novo em CSS, então provavelmente há uma solução realmente básica para isso que eu perdi.)
nota: eu preciso ter várias seções com borda. A idéia básica é ter vários clusters com bordas, cada um contendo várias linhas.