Я хочу сделать это
![enter image description here](https://i.stack.imgur.com/7Ieht.png)
Можно ли использовать только HTML и CSS для решения обеих задач (ориентация вверх и квадратная ячейка)?
ширина ячейки с ориентацией вверх должна соответствовать высоте строки
если мне нужно использовать javascript, можно ли это сделать без использования какой-либо инфраструктуры?
Спасибо
РЕДАКТИРОВАТЬ 1:
Это то, что я сейчас сделал
<style>
table {
border-collapse: collapse;
}
table td {
border: 1px solid #555;
width: 150px;
height: 150px;
}
.vertical {
transform: rotateZ(-90deg);
-o-transform: rotateZ(-90deg);
-ms-transform: rotateZ(-90deg);
-moz-transform: rotateZ(-90deg);
-webkit-transform: rotateZ(-90deg);
}
</style>
<table>
<tr>
<td rowspan="2" colspan="2"></td>
<td colspan="2">Horizontal Header</td>
</tr>
<tr>
<td>Horizontal Sub-Header</td>
<td>Horizontal Sub-Header</td>
</tr>
<tr>
<td rowspan="2" class="vertical">Vertical Header</td>
<td class="vertical">Vertical Sub-Header</td>
<td>[0][0]</td>
<td>[0][1]</td>
</tr>
<tr>
<td class="vertical">Vertical Sub-Header</td>
<td>[1][0]</td>
<td>[1][1]</td>
</tr>
</table>
, которые превращаются в это:
![enter image description here](https://i.stack.imgur.com/M5EAR.png)
, а затем я изменяю структуру заголовка таблицы и делаю класс .vertical следующим образом:
<style>
. . .
.vertical {
display: inline-block;
. . .
}
</style>
<table>
. . .
<td rowspan="2"><span class="vertical">Vertical Header</span></td>
<td><span class="vertical">Vertical Sub-Header</span></td>
. . .
</table>
и смог достичь так:
![enter image description here](https://i.stack.imgur.com/U8QRz.png)
width
ячейки вертикального заголовка не переносится на высоту вертикальной линии.