В настоящее время я пытаюсь исправить свой первый столбец в таблице, когда пользователь прокручивает по оси Х. Я использую эту структуру:
<div class="table-wrapper">
<table id="consumption-data" class="data">
<thead class="header">
<tr>
<th>Month</th>
<th>Item 1</th>
</tr>
</thead>
<tbody class="results">
<tr>
<th>Jan</th>
<td>3163</td>
</tr>
<tr>
<th>Feb</th>
<td>3163.7</td>
</tr>
<tr>
<th>Mar</th>
<td>3163.7</td>
</tr>
<tr>
<th>Apr</th>
<td>3163.7</td>
</tr>
<tr>
<th>May</th>
<td>3163.7</td>
</tr>
<tr>
<th>Jun</th>
<td>3163.7</td>
</tr>
<tr>
<th>...</th>
<td>...</td>
</tr>
</tbody>
</table>
</div>
Количество элементов будет выбрано пользователем, то есть может быть 90 позиций в таблице. Для этого потребуется прокрутка по оси X. Вопрос, который у меня есть, заключается в следующем:
Как зафиксировать положение тегов th
внутри tbody
(и th:first-child
в thead
)?
Я смотрел на некоторые другие темы, однако они действительно не объясняют, как я получаю фиксированные столбцы, из-за которых мне трудно понять, что делают коды и что я должен делать.
Я также проверил решения, в которых люди разбивают столбец заголовка в другой таблице. Это не будет возможно для меня, потому что я буду экспортировать данные в другие системы позже.
Мой css:
.table-wrapper {
overflow-x:scroll;
overflow-y:visible;
}
Это исправляет прокрутку, теперь идет работа с:
tbody th,
thead th:first-child {}
У кого-нибудь есть идеи?
EDIT: вот jsFiddle: http://jsfiddle.net/DJqPf/5/