当内容位于多个页面时,CSS 打印自定义大小的页边距

2024-01-10

我正在尝试打印可能很长且包含文本段落和表格的 HTML 页面。我的目标是定义打印边距对于每个页面。 我将以下 CSS 添加到我的页面:

@media print {
    body {
        margin: 2.5cm 0;
    }
}

但我遇到的问题是边际增加了only到文档的开头和结尾,而不是每一页。 正如您从附图中看到的,我在第一页有顶部页边距,但在第二页没有,我想要的行为类似于书籍或 Word 文档(您在其中定义页边距)。 可以用CSS来做吗?

问题在打印预览屏幕中可见 https://i.stack.imgur.com/3chej.png


打印页边距的 CSS

@page {
  margin: 1in; // margin for each printed piece of paper
}

@page :first {
  margin-top: 2in; // top margin for first page of paper
}

@media print {
  body {
    margin: 0; // 
  }
}

打印对话框设置

在打印预览对话框中,确保“边距”设置为“默认”。

如果“边距”设置为“无”(或其他非“默认”选项)@page设置将被忽略。

浏览器支持

并非所有浏览器都支持 @page https://caniuse.com/#feat=css-paged-media。学习更多关于@page https://developer.mozilla.org/en-US/docs/Web/CSS/@page.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当内容位于多个页面时,CSS 打印自定义大小的页边距 的相关文章

随机推荐