簡體   English   中英

我可以強制HTML文檔長一頁嗎?

[英]Can I force an HTML document to be one page long?

我正在從HTML生成一個文檔。 有沒有辦法強制HTML頁面成為一個打印頁面長一個?

我用<table><div>標簽完成了大部分頁面。

不完全是,但您可以使用打印樣式表:

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

要將字體大小,填充等設置為物理單位,例如'pt'(絕不應該在屏幕樣式表中使用!),以便在典型的瀏覽器中呈現時,它或多或少是A4頁面,典型的字體,伴隨着風。 沒有任何保證,但您可以針對常見情況進行優化。

在打印中,您不必太擔心字體大小首選項或dpi設置,但您仍然無法控制瀏覽器使用的邊距或實際頁面大小(US Letter小於A4),因此請保留一定的數量wiggle房間和主要瀏覽器測試。

不可以。您無法控制用戶的縮放級別,打印機設置,紙張尺寸(他在歐洲使用A4紙還是在美國使用合法紙張?)以及使用HTML影響打印機輸出的所有其他各種因素。

使用HTML可以做的最好的事情是創建一個非常簡單的“打印機友好”頁面並保持內容簡短。 或者,您可以構建PDF,旨在讓您控制打印方式。

您可以使用CSS樣式的頁面,並將其設置到一定的高度/寬度...有一個很好的教程在這里

使用PDF。 你可以強制許多東西,如字體大小,字體類型和許多其他參數,但任何瀏覽器都可以決定他們不關心和使用他們想要的任何東西,從而違反你的先決條件或決定。 HTML不是(在我之后重復:不是)一種表示語言。

在許多情況下,它將主要起作用,但沒有什么是確定的。

不,但是您可以通過使用專用的CSS文件進行打印介質,使打印視圖更加順暢,如上所述。

然后,您可以通過使用“page-break-before:always;”來至少阻止表跨越2頁

最后你也可以使用“display:none;” 在廣告,導航欄等不必要的元素上,以保持頁面本身更短(對於單個頁面來說足夠短,希望如此)。

但不保證。

當然。 你有幾種可能性:

  • 將您的頁面轉換為大圖像。
  • 將您的頁面轉換為PDF。
  • 使用具有固定尺寸的頁面使所有用戶煩惱,這些頁面向左和向右滾動,因為它太寬並且使得傳輸信息非常困難。

沒有辦法,因為在渲染HTML時你不可能知道打印機類型或紙張尺寸。

我唯一的建議是設置打印機屬性以在打印時縮放內容以適合一頁。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM