在HTML中打印多页表时,只重复THEAD中的一些行

时间:2011-08-12 14:04:44

标签: html css

我需要在 打印 巨大的HTML表格时执行此操作:

+-----+---------+-----+
|  ID |  Title  | Qty |  ⇐ descriptive header that shouldn't repeat
+-----+---------+-----+
|  1  |    2    |  3  |  ⇐ column number that **SHOULD** repeat
+-----+---------+-----+
| aaa | bbb     |   0 |  ⇐ data; rows upon rows of data

  ...     ...     ...

+-----+---------+-----+
|  1  |    2    |  3  |  ⇐ page 2
+-----+---------+-----+
| xxx | yyy     | 999 |
  ...     ...     ...

是否可以在不使用“2个固定布局的表格”解决方案的情况下实施(我真的不想使用固定值)?哦,我只能使用HTML和CSS。

如果有帮助,我只针对IE(6及以上)。

更多信息

到目前为止,我已尝试过这些不同的黑客攻击,但无济于事:

  1. 没有thead,第二行获得th而不是td

    1.1。即使style="display:table-header-group"

  2. 上有trthead
  3. ,第一行使用td代替th

    2.1。在style="display:table-row-group"上使用thead,在第二行使用style="display:table-header-group"

  4. thead中间插入tbody的变体(根据消失的答案之一)

  5. 我开始接受这是不可能的,我将不得不采用固定的布局设置(但我祈祷只留下一个灵活宽度的列就足够了): - (

3 个答案:

答案 0 :(得分:2)

支持仍然很少,但您可以使用正确的渲染器执行此操作:

<强> Dcoumentation http://www.w3.org/TR/css3-page/http://dev.w3.org/csswg/css-gcpm/

受支持的热门引擎http://weasyprint.org/docs/features/http://www.princexml.com/doc/9.0/page-headers-footers/

我还努力获得 WKHTMLTOPDF

中包含的支持

答案 1 :(得分:1)

基于这样的想法,你希望这个表能很好地流向设备屏幕上的“页面”(我仍然不完全按照你的意思),我会选择paginating your single table with javascript

对于表格第一页中的第二个标题,我会使用javascript在表格的开头插入一个额外的行,给出一个类并以编程方式添加列号。如果你需要我,我可以扩展这个。

答案 2 :(得分:-1)

事实证明,你不能做这种事。

根据您的要求,最接近的解决方案是在彼此之间使用两个固定布局表格,或者在保证适合一页的部分中对表格进行硬性处理。