首頁 >web前端 >js教程 >如何控制跨瀏覽器 HTML 列印的印表機設定?

如何控制跨瀏覽器 HTML 列印的印表機設定?

Linda Hamilton
Linda Hamilton原創
2024-11-08 19:19:02264瀏覽

How Can I Control Printer Settings for HTML Printing Across Browsers?

停用瀏覽器列印選項:頁首、頁尾、邊距

在各種情況下,從印表機列印時需要控制預設印表機設定瀏覽器,特別是HTML 格式,可繞過PDF 或其他外掛程式。雖然有透過 CSS 修改頁面方向和邊距的方法,但不同瀏覽器之間會出現不一致的情況,例如 Firefox 添加了額外的半英寸邊距。

CSS 方法

CSS合併了@page指令,它允許分頁媒體特定的格式。然而,瀏覽器相容性限制了其有效性。 Safari 不支援設定頁邊距,而其他主流瀏覽器則實現了它。

實作@page

利用@page 指令,您可以指定頁面的印表機邊距,與HTML 元素的CSS 不同margin:

@page {
  margin: 0mm;  /* Affects printer settings margin */
}

注意事項

雖然此方法看起來有效,但它有限制:

  • Firefox 3.6: 不支援🎜>
  • Firefox 3.6:
  • 不支援🎜>不支援
  • IE 7、Safari 5.1.7、Google Chrome 4.1:
也不支援。

其他瀏覽器成功
  • IE 8、Opera 10、Google Chrome 21、Firefox 19:
支援設定頁邊距,但表現出不同的行為。

瀏覽器特定行為


IE :邊距設定為0mm,但使用者可以在列印中修改它們預覽。
Firefox: 正確定位內容,但同時顯示瀏覽器和頁面頁首/頁尾。
Opera: 隱藏頁眉,但頁腳位置不正確。

Chrome:

如果@page 邊距最小化了瀏覽器的頁首/頁腳與瀏覽器的位置衝突,則隱藏瀏覽器頁眉/頁腳

結論

@page 指令可以提供印表機設定的有限控制。 Chrome 以其出色的頁首/頁尾隱藏處理而脫穎而出。然而,所有瀏覽器缺乏一致的支援給確保一致的列印體驗帶來了挑戰。

以上是如何控制跨瀏覽器 HTML 列印的印表機設定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn