Обновленное лучшее решение
Не знаю, почему я не решал основную проблему с самого начала, но ваша главная проблема заключалась в том, что пункт ниже давил, ну, вы можетенацельтесь на следующий элемент и установите для верхней границы значение none
tr:hover + tr td {
border-top: none;
}
Остальная часть исходного кода остается без изменений
table {
border-collapse: separate;
border-spacing: 0;
}
td {
border: solid 1px black;
border-style: solid none;
padding: 10px;
border-bottom: 0;
}
tr:hover + tr td {
border-top: none;
}
td:first-child {
border-left-style: solid;
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
td:last-child {
border-right-style: solid;
border-bottom-right-radius: 10px;
border-top-right-radius: 10px;
}
tr:last-child td {
border-bottom: solid 1px black;
}
tr:hover {
/*background-color: #cad6ed;*/
}
tr:hover td {
border: 1px solid #12A0F8;
border-style: solid none;
padding: 10px;
}
tr:hover td:first-child {
border-left-style: solid;
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
tr:hover td:last-child {
border-right-style: solid;
border-bottom-right-radius: 10px;
border-top-right-radius: 10px;
}
<table>
<tr>
<td>One</td><td>Two</td><td>Three</td>
</tr>
<tr>
<td>One</td><td>Two dfds</td><td>Three</td>
</tr>
<tr>
<td>One</td><td>Two</td><td>Three</td>
</tr>
</table>
Старый ответ
Вы можете сделать это, установив tr
для отображения блока. Я использовал margin-top -1px, чтобы скрыть лишнюю границу. Для упрощения я удалил рамку из td и просто поместил ее на tr
, так как у вас все равно нет границ между tds
z-index при наведении делает всплывающий элемент всплывающим с рамкой
Я положил отрицательную маржу для всех tr, но первое, вы, вероятно, могли бы сойти с рук на всех tr
s
table {
border-collapse: separate;
border-spacing: 0;
}
td {
padding: 10px;
}
tr {
border-radius: 10px;
border: 1px solid #000;
display: block;
box-sizing: border-box;
position: relative;
}
tr:not(:first-child) {
margin-top: -1px;
}
tr:hover {
z-index: 2;
border: 1px solid blue;
}
<table>
<tr>
<td>One</td>
<td>Two</td>
<td>Three</td>
</tr>
<tr>
<td>One</td>
<td>Two</td>
<td>Three</td>
</tr>
<tr>
<td>One</td>
<td>Two</td>
<td>Three</td>
</tr>
</table>