在Firefox上强制背景颜色打印

时间:2016-01-25 23:52:20

标签: html css ruby-on-rails firefox printing

我使用Barby红宝石宝石,为render barcodes as HTML添加了一种方便的方法。

Barby根据传递给它的代码打开或关闭具有td背景的表格。这非常有效,因为我不想为每个需要条形码的记录生成和存储图像文件。

主要浏览器默认情况下不打印背景颜色,我需要打印条形码而不会让用户更改本地系统上的打印选项。

我不确定如何使用Firefox完成此操作。使用webkit(Chrome和Safari),它非常简单:

td { 
  background: #000 !important;
  -webkit-print-color-adjust: exact;
}

狂热的谷歌搜索并没有真正把我带到任何地方:This问题已经有几年了,我还没有找到更新的东西,所以我想我再次提出这个问题。 Fat borders也无法真正发挥作用,因为如果条形图之间的关系发生变化,它会更改代码中包含的数据。

2 个答案:

答案 0 :(得分:19)

这开始在Firefox(至少版本48.0.2)中使用" color-adjust"属性。

td { 
  background: #000 !important;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
}

我在我的特定项目中看到了一两个小错误,但背景颜色正在显示!

答案 1 :(得分:3)

这对我有用:

@media print {
    body {
        -webkit-print-color-adjust: exact; /*Chrome, Safari */
        color-adjust: exact; /*Firefox*/
    }
}