Я не знаю, есть ли лучшее решение для этого, но проблема заключается в colspan
и использовании border-collapse
.
Я переписал код только потому, что он показался мне беспорядочным, но в основном решение было использовать border-spacing: 0;
вместо border-collapse: collapse;
Это не идеально, потому что это не одно и то же. Поэтому, если бы у всех ваших ячеек были границы, то те, которые находились внутри таблицы, удвоились бы, создавая границу размером 2 пикселя.
Однако в этой ситуации вы ничего не заметите, и вы все равно можете использовать border-collapse
.
Ну, я думаю, что сказал достаточно.
Вот мой код (немного отличается от вашего, но он делает то же самое):
CSS:
<style type="text/css">
.tableStyle {
position: absolute;
left: 0px;
border-spacing: 0;
}
.tableStyle td {
height: 19px;
width: 72px;
}
.blackBorder {
border: 1px solid #000;
}
</style>
HTML:
<table class="tableStyle">
<tr>
<td rowspan="2" colspan="2" class="blackBorder">1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td rowspan="3" colspan="2" class="blackBorder">7</td>
<td>8</td>
</tr>
<tr>
<td>9</td>
</tr>
<tr>
<td>10</td>
</tr>
</table>