使用 print.css 样式表删除打印时出现的元素

Removing elements that appear when printing, using print.css stylesheet

问题

我目前正在使用样式表 print.css 来删除元素和一些样式来创建打印友好的页面,但我似乎无法删除出现在页面角落的四个东西,但不在 HTML 中:paginationdate printedtitle of pageURL of page

可能的解决方案?

我从《洛杉矶时报》看到这个例子,它显示了不在 HTML 中但通常在打印被删除时出现的元素:http://graphics.latimes.com/oscar-bingo-2015/

这是一些特定于浏览器的打印信息。您无法更改它,用户必须正确设置其打印属性。

另请参阅:Removing page title and date when printing web page (with CSS?)

编辑:这恰好可行,但我不知道怎么做。

Whosebug 上有很多关于该主题的帖子:

看起来可以通过将 @page media property 与印刷媒体结合使用来实现 属性:

@media print {
    @page { margin: 0; }
  }

然而,它似乎只在 Chrome 中有效(暂时)。不过,Firefox can be made 有义务。在其他地方,建议动态创建 PDF - 或使用 JavaScript 至少将页面标题设置为空字符串。

另外,我想问你为什么要隐藏你的用户通常习惯控制的东西。

不过要回答你的问题:洛杉矶时报使用 bootstrap,它按如下方式设置页边距:

...@page{margin:.5cm}...