Терр!
HTML::Table
обладает довольно хорошей гибкостью для формирования HTML-таблиц из структур данных perl, но я не нашел подходящего способа, чтобы th
-метки отличались от обычных ячеек (td
) в той же колонке. Или позвольте мне перефразировать: если я устанавливаю класс столбца, я хотел бы установить его только для строк данных, а не для строки заголовка.
use strict;
use warnings;
use HTML::Table;
my $table = new HTML::Table(
-head=> ['one', 'two', 'eleven'],
-data=> [ ['yki', 'kaki', 'kommi'],
['yy', 'kaa', 'koo'] ]
);
$table->setColClass(1, 'class');
$table->setSectionColClass('tbody', 0, 2, 'class2');
print $table;
И вывод:
<table>
<tbody>
<tr><th class="class">one</th><th class="class2">two</th><th>eleven</th></tr>
<tr><td class="class">yki</td><td class="class2">kaki</td><td>kommi</td></tr>
<tr><td class="class">yy</td><td class="class2">kaa</td><td>koo</td></tr>
</tbody>
</table>
Вывод, который я ищу:
<table>
<tbody>
<tr><th>one</th><th>two</th><th>eleven</th></tr>
<tr><td class="class">yki</td><td class="class2">kaki</td><td>kommi</td></tr>
<tr><td class="class">yy</td><td class="class2">kaa</td><td>koo</td></tr>
</tbody>
</table>
Существуют методы уровня раздела, но th
также относится к tbody
. Таблицы могут быть довольно сложными, поэтому я бы хотел избежать итерации по строке заголовка и надеяться найти достойный способ. Есть ли?