有没有办法告诉浏览器您的网页是否适合打印机?

时间:2014-10-20 18:57:44

标签: html printing printers

我有一个带有打印机专用样式表的网页,我用它来确保它使用零色墨水和尽可能少的黑色。但是,有一个非常重要的元素不是我需要显示的文本:徽标,由CSS保存和显示。默认情况下,Chrome(以及可能基于Chromium的浏览器)不会打印&#34;背景图形&#34;,这是样式表带来的任何颜色或图像。 是否有任何元标记或其他此类方法可用于告诉浏览器我确保该页面对打印机友好?我尝试在<IMG>中显示它但是事实证明这很难定位。

我正在寻找与使用<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=utf-8"/> <META CHARSET="utf-8" />告诉它的东西相同的东西我用UTF-8或<META PROPERTY="og:locale" CONTENT="en_US" />告诉它这是美国英语或<META NAME="viewport" CONTENT="initial-scale=1.0, user-scalable=no" />告诉它这是一个适合移动设备的网站。我认为所有这些都是如此,它不必做出假设,我希望那里有一个打印机友好标签。

1 个答案:

答案 0 :(得分:2)

不,没有办法告诉浏览器您的网页对打印机友好。如果有,它几乎没有任何影响,如果有,它可能会被误用。这不同于例如您描述为标记为“适合移动设备的网站”的标记,它只会抑制默认缩放(并防止用户可扩展性,这对任何人都不友好)。

可以做的是指定某些样式表仅适用于打印介质。但这只会限制它们对印刷媒体的影响。

您还可以使用<link rel="alternate" media="print" href="...">指定要打印的页面的备用版本。但这最多会导致在打印页面时使用该版本。

如果您真的打算询问如何强制使用CSS实现的背景图像进行打印,那么答案是您不能。只需将其设为内容图片即可。您可以通过使用JavaScript动态更改DOM来实现这一点,以便在打印之前,将新的img元素添加到DOM中;但在正常情况下,包含静态img元素要简单得多。