我使用window.print()打印页面,但页眉和页脚包含页面标题,文件路径,页面编号和日期。如何删除它们?

我也尝试过打印样式表。

#header, #nav, .noprint
{
display: none;
}

请帮忙。谢谢。

最佳答案

在Chrome中,可以使用来隐藏此自动页眉/页脚

@page { margin: 0; }

由于内容将扩展到页面的限制,因此将缺少页面打印页眉/页脚。当然,在这种情况下,您应该在body元素中设置一些边距/内边距,以使内容不会一直延伸到页面边缘。由于普通打印机无法进行无边距打印,而且可能不是您想要的,因此应使用以下方法:
@media print {
  @page { margin: 0; }
  body { margin: 1.6cm; }
}

正如Martin在评论中指出的那样,如果页面上有一个长元素滚动到一页(例如一张大桌子)上,则页边空白将被忽略,并且打印版本看起来会很奇怪。

在最初获得此答案(2013年5月)时,它只能在Chrome上运行,目前尚不确定,不再需要重试。如果您需要无法运行的浏览器的支持,则可以即时创建PDF并进行打印(可以在其上嵌入JavaScript的自打印PDF),但这是一个很大的麻烦。

关于css - 从window.print()删除页眉和页脚,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8228088/

10-11 03:05