У меня есть несколько таблиц на сайте. Если в таблице несколько строк, каждая ячейка должна быть окаймлена, что теперь решается с помощью td {border: 1px solid black;}. Но если в таблице есть только одна строка, я хотел бы скрыть границы или установить ширину границы равной 0.
Есть ли способ добиться этого исключительно с помощью CSS без изменения HTML или использования JS?






Добавьте селектор для одной строки.
table {
border-collapse: collapse;
}
td {
border: 1px solid black;
}
table tbody tr:only-child td { /* The override. */
border: none;
}<table>
<tbody>
<tr><td>1</td><td>2</td><td>3</td></tr>
</tbody>
</table>
<br>
<table>
<tbody>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>4</td><td>5</td><td>5</td></tr>
</tbody>
</table>
Я не вижу способа без JS или жесткого кодирования в HTMl путем добавления класса. Как документ должен знать, что в таблице только одна строка и что для нее применяется другой стиль?