2009-01-19 68 views
17

是否可以在每个打印页面的Safari中重复表格标题?是否可以告诉Safari在打印页面上重复表格标题?

此代码在Firefox,但不是在Safari:

<table> 
    <thead> 
    <tr> 
     <td>Header1</td> 
     <td>Header2</td> 
    </tr> 
    </thead> 

    <!-- lots of rows --> 
</table> 

编辑:

以下不能解决问题,因此它不能是IE具有相同的错误:

thead { display:table-header-group; } 

回答

4

要回答我的问题:

google搜索而没有得到正确的答案我认为根本不存在的方法来完成它之后。也许更高版本的Safari将包括它。

0

您可能需要考虑为您的页面的打印版本创建一个CSS工作表。如果您选择该路线,请使用“位置:固定”。定位为“固定”的元素将打印在每个打印页面上。

棘手的部分是,任何定位元素(即位置属性不是'静态')被从文档流中取出。这使得固定元件的其他(常规流动)元件难以对准。

根据您的问题中的信息,我会将整个表换成固定元素(或者创建一个类,例如.printedTable,并将position属性设置为fixed)。这样,表格结构将在每个打印页面上重复。

祝你好运。 A.

+0

只应重复该表的标题,而不是整个表,因为它大于单个页面。 – 2009-01-20 10:48:11

+0

我会创建一个'固定'标题元素,以便在每个页面上重复,并将页面顶部边距设置为足够大的值以防止页面/表格内容在固定标题下呈现。然后页面可以打印表格内容,并在每个页面上重复标题 – Ahmed 2009-01-21 21:03:01

1

您可以考虑重新定期打印thead,因为您在桌子下面。如果表格相当长,即使在屏幕上查看,这也可能是有益的,因为标题很可能很快从屏幕滚动出来。但是,如果您不想在屏幕上显示它,则可以向重新打印的标题添加一个类,将它们隐藏在屏幕上,并仅将它们显示在打印样式表中。

相关问题