Один из подходов состоит в том, чтобы смоделировать это поле с установкой границ для соответствующих ячеек.Заголовок может быть создан с большей верхней границей и псевдоэлементом ::before
.
. Этот подход работает только в том случае, если вы установите border-collapse: collapse;
на своей таблице, в противном случае между границами ячеек будут пробелы..
Преимущество заключается в том, что размер ящика масштабируется напрямую с содержанием таблицы.Если вы создадите это поле как наложение, у вас возникнет проблема при изменении содержимого таблицы или ширины столбцов.
table {
border-collapse: collapse;
}
th,
td {
padding: 5px 10px;
margin: 0;
}
table tr td:nth-child(4),
table tr th:nth-child(4) {
border-left: 2px solid #17a4e4;
}
table tr td:nth-child(5),
table tr th:nth-child(5) {
border-right: 2px solid #17a4e4;
}
table tr th {
position: relative;
border-top: 25px solid transparent;
}
table tr th:nth-child(4),
table tr th:nth-child(5) {
border-top: 30px solid #17a4e4;
}
table tr:last-child td:nth-child(4),
table tr:last-child td:nth-child(5) {
border-bottom: 2px solid #17a4e4;
}
table tr th:nth-child(4)::before {
content: "Aanbieding";
text-transform: uppercase;
color: white;
position: absolute;
top: -23px;
left: 50%;
}
<table class="promo-table">
<tr>
<th>Product</th>
<th>Modellen</th>
<th>Referentie</th>
<th>TariefPrijs 2018</th>
<th class="promo">Promoprijs</th>
</tr>
<tr class="first-promo">
<td>Set remblokken, vooras</td>
<td>117, 176, 246</td>
<td>A 000 420 29 02</td>
<td>€75,81</td>
<td class="promo">€38,70</td>
</tr>
<tr>
<td>Set remblokken, vooras</td>
<td>117, 176, 246</td>
<td>A 000 420 29 02</td>
<td>€75,81</td>
<td class="promo">€38,70</td>
</tr>
<tr>
<td>Set remblokken, vooras</td>
<td>117, 176, 246</td>
<td>A 000 420 29 02</td>
<td>€75,81</td>
<td class="promo">€38,70</td>
</tr>
</table>