私はcreate tableのデータを持っていて、それを印刷します。構造は次のようである:ページ区切りのhtmlページを印刷
タイトル データ 合計
タイトルはページの最後にあってはならないと合計がページの先頭印刷それであってはなりません。私はDivsを使ってhtmlテーブルを作って、すべてのサイズをmmにしているのですしかし、私は区切りページのときにcolculateできませんでした。別のコンピュータの高さの変化にお付き合いください。ここ
は、計算のための私のjavascriptのコードで、ページここ
$(document).ready(function(){
var mydiv ='<div class="page-break"></div>';
var i=0;
var h = px2cm($("#myinfo").last().height())*10;
var limit=297;
var g =0;
$('#content div.ptr').each(function(){
g=0;
h = h + px2cm($(this).height())*10;
var nexth=px2cm($(this).next().height())*10;
if(h>=limit-nexth)
{
if($(this).hasClass("ptrtitle")){
$(this).before(mydiv);
h = px2cm($(this).height())*10;
i++;
g=1;
}else{
if(String($(this).next().attr("class"))==="ptr ptrsum"){
if($(this).prev().hasClass("ptrtitle"))
{
$(this).prev().before(mydiv);
h = px2cm($(this).height()+$(this).prev().height())*10;
}else{
$(this).before(mydiv);
h = px2cm($(this).height())*10;
}
//h=0;
i++;
g=1;
}else{
$(this).after(mydiv);
h=0;i++;
}
}
}
});
});
function px2cm(px) {
var d = $("<div/>").css({ position: 'absolute', top : '-1000cm', left : '-1000cm', height : '1000cm', width : '1000cm' }).appendTo('body');
var px_per_cm = d.height()/1000;
d.remove();
return px/px_per_cm;
}
を破る私は限界= 297(A4の高さのために、それは一部のコンピュータ上での良い動作しますが、他の人には良い仕事をdoesnt)を追加します。 doesntの仕事は良いが、それは1ページに40行を出力しますが、別の上にいくつかの行は、私は通常
あなたはCSSプロパティのページ区切りを見ましたか?おそらくあなたはそれをdivに追加し、それを '避ける'ように設定することができます。 – sol
はい、私はうまく動作しません – user2632703
jsfiddleなどでマークアップの簡単なデモを作成した方が簡単に役立つかもしれません。 – sol