Форсировать цвет фона в Firefox

Я использую Barby рубиновый камень, который добавляет удобный способ отображает штрих-коды как HTML.

Barby отображает таблицу с флагами td на основе или на основе кода, переданного ей. Это работает очень хорошо, потому что я не хочу создавать и хранить файл изображения для каждой записи, для которой нужен штрих-код.

Основные браузеры не печатают цвета фона по умолчанию, и мне нужен штрих-код для печати без внесения пользователем изменения параметра печати в их локальную систему.

Я не уверен, как это сделать с Firefox. С webkit (Chrome и Safari) это довольно легко:

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

Лихорадочный гуглинг ничуть не повсюду: Этот вопрос - это несколько лет, и я не нашел ничего нового, поэтому считаю, что я бы поставил вопрос снова. Плотные границы также не будут работать, потому что если связь между строками изменится, это изменит данные, содержащиеся в коде.

Ответ 1

Это начинает работать в Firefox (по крайней мере, версия 48.0.2) с свойством color-adjust.

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

Я вижу небольшую ошибку или два в моем конкретном проекте, но цвета фона появляются!

Ответ 2

Это работает для меня:

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