Как уже отмечали другие, в настоящее время это невозможно только с помощью CSS.Но, как упражнение по кодированию, я попытался повернуть таблицу с помощью преобразования css, а затем «развернуть» ячейки, так что ваш первый ребенок окажется заголовком столбца ...
.container {
float: left;
-webkit-transform: rotate(90deg) translate(-240px, -260px);
-moz-transform: rotate(90deg) translate(-240px, -260px);
-o-transform: rotate(90deg) translate(-240px, -260px);
-ms-transform: rotate(90deg) translate(-240px, -260px);
transform: rotate(90deg) translate(-240px, -260px);
color: #333;
}
table td, table th {
border: solid #eee 1px;
padding: 10px;
}
table tr:hover th:first-child { color:#000; background:#EAEAEA; }
table tr:hover td { color:#000;}
table th {
font-weight: bold;
}
table th, table td {
height: 200px;
width: 20px;
}
table th span, table td span {
display: block;
position: absolute;
-webkit-transform: rotate(-90deg) translate(-100px, 0);
-webkit-transform-origin: top left;
-moz-transform: rotate(-90deg) translate(-100px, 0);
-moz-transform-origin: top left;
-o-transform: rotate(-90deg) translate(-100px, 0);
-o-transform-origin: top left;
-ms-transform: rotate(-90deg) translate(-100px, 0);
-ms-transform-origin: top left;
transform: rotate(-90deg) translate(-100px, 0);
transform-origin: top left;
}
посмотреть демо в jsfiddle
Это, конечно, просто для развлечения, и никогда не попадет в производство.Вы должны добавить много разметки, потому что многие браузеры теряют популярность, если вы пытаетесь трансформировать ячейки таблицы.
Теоретически это должно быть более надежно с writing-mode
, но в настоящее время это поддерживается только IE9 +.Это будет выглядеть примерно так ...
table {
writing-mode: TB-LR;
}
table td, table th {
writing-mode: LR-TB;
}