У меня есть решение, с помощью которого я могу создавать прокручиваемые таблицы с фиксированным заголовком/нижним колонтитулом с помощью младших jQuery и CSS, но я ищу способ сделать это решением только для CSS, совместимым с кросс-браузером.
Чтобы быть ясным, я пытаюсь использовать тег only a table
(и это действительные подтеги, colgroup
, col
, thead
, tbody
, tfoot
, tr
, th
, td
), но принять набор правил CSS, которые будут соответствовать следующим условиям:
- Необходимо поддерживать выравнивание столбцов между строками заголовка/нижнего колонтитула/содержимого
- Должен разрешить заголовок/нижний колонтитул оставаться фиксированным, пока содержимое прокручивается вертикально.
- Не нужно использовать jQuery или другой JavaScript для обеспечения функциональности
- Необходимо использовать только теги, указанные выше
Этот пример кода: http://jsfiddle.net/TroyAlford/SNKfd/ показывает мой текущий подход. Большая часть JS - это просто заполнить таблицу случайными значениями, но последняя часть - это то, что приводит к прокрутке влево/вправо.
$tbody.bind('scroll', function(ev) {
var $css = { 'left': -ev.target.scrollLeft };
$thead.css($css);
$tfoot.css($css);
});
ПРИМЕЧАНИЕ. Приведенный пример не корректно отображается в IE и требует, чтобы jQuery обеспечивал горизонтальную прокрутку. В любом случае, мне не нужна горизонтальная прокрутка, так что это нормально, если решение не делает этого.