0

我有一个网页,其中包含一个动态填充的表格。此页需要打印出来作记录。我遇到的问题是避免 tr 内的分页符。我花了很多时间在谷歌上搜索并尝试了很多事情,但我只能生成一个页面,该页面没有在正确的位置中断,因此丢失了一些数据。我有一个小的简单打印 css 页面

.noprint{
display: none;
}
.printthis { 
display: block; 
} 
.data table{ 
page-break-inside:avoid;
}
.data tr{
page-break-inside:avoid;
}
.data thead{
display:table-header-group;
}
.data tbody{
display:table-body-group;
page-break-inside:avoid;
}
.data,
.data th,
.data td {
border:1px solid #000;
border-spacing:0;   
border-collapse:collapse; 
}
.data table,th, tbody, tr, td {
background-color:transparent;
padding: 0px;
margin: 0px;
}
a:link:after, #content a:visited:after {
content: " (" attr(href) ") ";
text-decoration: none;
font-size: 90%;
display: none;
}
a[href^="/"]:after {
text-decoration: none;
display: none;
}

我只是想在这张表中打印出我已经完成的结果,我只需要一点帮助就可以让它在正确的位置中断。任何帮助表示赞赏

4

2 回答 2

1

尝试插入一个带有额外属性的 CSS

media=print

<link type="stylesheet" href="../css path" media="print">

现在使用该选项

window.print()

只有这个 css 会被激活并且你的打印页面会应用这个 css

于 2012-10-06T16:25:43.737 回答
1

是否在所有浏览器中拆分行?

我遇到了类似的问题:

tr {page-break-inside:avoid;}

为我工作,但你似乎已经有了这个。
也许您的 css 规则没有覆盖行,请尝试使用您选择的浏览器中的开发人员工具栏来检查表格行的应用 css 规则。

至于在每页顶部打印表格标题,目前看来 IE 是唯一支持此功能的浏览器。
基于 web-kit 的浏览器目前不支持它:
Bug 17205 - THEAD & TFOOT 应该打印在每一页上

于 2012-10-17T12:22:36.940 回答