如果我在表上使用Bootstrap table类,则打印预览不会显示tr的背景色。

我的密码

<head>
  <!-- All Bootstrap's stuff ... -->

  <!-- My custom style -->
  <style type="text/css">
    @media print {
      .bg-danger {
        background-color: #f2dede !important;
      }
    }
  </style>
</head>
<body>
  <div class="bg-danger">
    <td>DIV</td>
  </div>

  <table class="table">
    <tr class="bg-danger">
      <td>TR 1</td>
    </tr>
    <tr class="danger">
      <td>TR 2</td>
    </tr>
    <tr style="background-color: #f2dede !important;">
      <td>TR 3</td>
    </tr>
  </table>
</body>

在屏幕上,所有均为红色,但在打印预览中,只有div元素为红色。

如果我删除了table类,则一切正常(除了我需要表格样式)。

我的配置:IE11和Windows 7。

有技巧打印背景颜色吗?

注意:此处不是所指示的重复项(CSS @media print issues with background-color;),请检查我的设置以打印背景色。另外,我可以为其他几个元素打印颜色。

回答:

感谢@Ted注释,我为td类覆盖了table样式:
<style type="text/css">
  @media print {
    .bg-danger {
      background-color: #f2dede !important;
    }

    .table td {
      background-color: transparent !important;
    }
  }
</style>

最佳答案

Bootstrap明确将背景设置为白色以进行打印-这在其CSS中:

@media print {
    .table td, .table th {
        background-color: #fff !important;
    }
}

像他们一样写下自己的替代,您应该会很好。

10-08 16:46