分页符后重复表标题

Bri*_*ser 2 html css printing caption css-tables

打印HTML表格时,可以使用CSS强制在分页符之后再次显示表格的标题行。这种风格:

@media print {
   thead { display: table-header-group; }
}
Run Code Online (Sandbox Code Playgroud)

结果是:

字幕
-------------
Col1 | Col2
-------------
数据1 | 数据2
数据3 | 数据4

- 分页符 - 

Col1 | Col2
-------------
数据5 | 数据6

有没有一种方法可以在分页符之后重复表标题?我认为您可以做类似的事情caption { display: table-caption-group; },但这并不存在。该解决方案需要在IE9中工作。

Juk*_*ela 5

恐怕没有办法实现这一目标。原则上,您可以设置caption { display: table-caption-group; },但根据规范,“如果一个表包含多个带有'display:table-header-group'的元素,则仅第一个呈现为标题;其他人则被视为具有“ display:table-row-group”。因此,您将无法同时进行theadcaption重复。此外,IE 9甚至不会让您一个人重复caption(Firefox会重复)。

解决方法是将caption元素转换为作为thead元素一部分的表行。例如,对于两列表:

<table>
<thead>
<tr><th colspan=2>Caption
<tr><th>Header cell <th>Another header cell
</thead>
Run Code Online (Sandbox Code Playgroud)