[英]PHP Print preview problems for table
我正在從Mysql DB生成php報告。 我在此報告中顯示的所有內容都是從數據庫中獲取的。
我在打印預覽中遇到的問題
table-header-group;
作為table5,table1和table 3的標題,它在瀏覽器中不起作用。 我需要的解決方案
1.如果表3行增加,如果表4觸摸下面的行(div邊框),則應完全移至打印預覽中的下一頁。
2.如果table4轉到下一頁,則應位於table1&2下方。
需要幫忙!
我的代碼:
@media print {
#container
{
border:1px solid;
}
table
{
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
border-right: 1px solid #ccc;
border-spacing:0;
border-collapse: collapse;
}
table td
{
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 1mm;
}
table.heading
{
height:50mm;
}
#table_table3, #table_table4
{
font-size: 9pt;
line-height: 7px;font-size: 9pt;
page-break-before: always;
}
#table_table3 table , #table_table4 table
{
width:100%;
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
font-size: 9pt
border-spacing: 0;
border-collapse: collapse;
page-break-before: always;
//margin-top:5mm;
}
#table_table3 table td , #table_table4 table td
{
text-align:center;
font-size:9pt;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding:1mm 0;
page-break-before: always;
}
}
您需要在CSS中添加一些@media print
規則,以便獲得打印機友好的樣式。
例如:
防止在頁面底部打印標題
h2, h3 {
page-break-after: avoid;
}
防止列表拆分或圖像內拆分
ul, img {
page-break-inside: avoid;
}
始終在表和文章之前分頁
table, article {
page-break-before: always;
}
指定表之前的分頁符:
table#table-4 {
page-break-before: always;
}
<table id="table-4">...</table>
在某些瀏覽器中,這可行:
table { page-break-inside:auto }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
引用:
警告。 嚴重的瀏覽器不兼容問題。
似乎大多數瀏覽器都不在乎page-break- *規則。
看起來,Opera是唯一支持此功能的設備。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.