Я пытаюсь разработать HTML / CSS, который может поставить рамку вокруг определенных строк в таблице. Да, я знаю, что на самом деле мне не нужно использовать таблицы для макета, но я еще не знаю достаточно CSS, чтобы полностью заменить его.
В любом случае, у меня есть таблица с несколькими строками и столбцами, некоторые из которых объединены с rowspan и colspan, и я хотел бы поставить простую рамку вокруг частей таблицы. В настоящее время я использую 4 отдельных класса CSS (верхний, нижний, левый, правый), которые я прикрепляю к <td>
ячейкам, расположенным вверху, внизу, слева и справа от таблицы соответственно.
.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>
Есть ли более простой способ сделать то, что я хочу? Я попробовал применить верх и низ к a, <tr>
но это не сработало. (ps Я новичок в CSS, поэтому, вероятно, есть действительно простое решение, которое я пропустил.)
примечание: мне нужно иметь несколько разделов с рамками. Основная идея состоит в том, чтобы иметь несколько кластеров с границами, каждый из которых содержит несколько строк.