2013-10-16 85 views
3

我下面的問題TD削減時分頁符下頁

enter image description here

正如你可以像看

  1. 數據沒有正確顯示
  2. 下一個td最後一個字符3是也打印在下一行
  3. 我可以避免頁腳和頁眉不調整頁邊距嗎?

我有谷歌很多關於這一點,並找到下面的解決方案,但它不適合我的列表谷歌瀏覽器在工作和IE9

<style> 
@media print 
{ 
    body { font-size:small; font-family: myOpenSans, Tahoma; font-size:13px; color:#808080; display:table-row} 
    table { page-break-after:auto } 
    tr { page-break-inside:avoid; page-break-after:auto } 
    td { page-break-inside:avoid; page-break-after:auto } 
    thead { display:table-header-group } 
    tfoot { display:table-footer-group } 
} 
</style> 
+1

不要讓你的希望就這一點;在經過20多年的網絡瀏覽器之後,打印HTML仍然處於一個嶄新的階段:-(通常,您必須在服務器上將數據轉換爲PDF以獲取所需的頁面佈局 –

+0

正確但他們希望直接打印選項,他們不會允許我們增加自己下載和打印PDF的步驟 – commit

+1

在這種情況下,「他們」應該滿意他們得到的東西,你可以建議他們打開一個針對IE的錯誤。他們問得很好。 –

回答

0

我不知道如果這是你在找什麼,但你可以從IE中打開打印對話框,並從預定義的ActiveX控件的一些值,並刪除頁面的頁腳和頭,並設置頁邊距,如果你想

function printSpecial() { 
     try { 

      var html = '<HTML><HEAD>\n'; 
      if (document.getElementsByTagName != null) { 
       var headTags = document.getElementsByTagName('head'); 
       if (headTags.length > 0) 
        html += headTags[0].innerHTML; 
      } 
      html += '<BODY style="background-color: #ffffff;">\n'; 
      var printReadyElem = document.getElementById('content'); 
      if (printReadyElem != null) { 
       html += printReadyElem.innerHTML; 
      } 
      else { 
       alert('Could not find the printReady function'); 
       return; 
      } 
      html += '</BODY></HTML>'; 

      shell = new ActiveXObject("WScript.Shell"); 
      shell.sendKeys('%fu'); //brings up page setup 
      shell.sendKeys("%a{TAB}.2{TAB}0{TAB}0{TAB}0{TAB}0{TAB}0{TAB}{UP}{TAB}{UP}{TAB}{UP}{UP}{UP}{UP}{TAB}{UP}{UP}{ENTER}"); 
      window.setTimeout("shell.SendKeys('%fp')",1000); // brings up print dialog 
     } catch (e) { 
      alert ("An exception occured: " + e + "\nCode is: " + e.number + "\nDescription is: " + e.description); 
      alert('Please verify that your print settings have a Landscape orientation.'); 
     } 
    }