打印样式表,背景色无效

5
我创建了一个表格,其中我循环为每个tr分配“奇数”和“偶数”类。在我的样式表中,我有以下内容:
table tbody tr.odd {
    background-color: #cccccc;
}
这在浏览器中有效,但打印时无效。我的媒体样式表中的其他所有内容都有效,除了这种背景颜色。
我已启用打印的颜色,并且可以打印带有颜色的图像......那么问题出在哪里呢?

Firefox 11。让我在Chrome中试试... - user89862
请查看打印您的页面。 - Rohit Azad Malik
我以前打印一些课程作业时遇到了问题。我记得当时我使用IE9来打印带有背景颜色的内容。我认为Opera也支持这种操作,不过我不确定最新版本的FF和Chrome是否支持。 - Bojangles
尝试添加一个 "td" 表格 tbody tr.odd td { 背景颜色: #cccccc; } - riso
2个回答

6

默认情况下,大多数浏览器在打印时会忽略CSS背景颜色和图片。除非浏览器具有此选项(正如Quentin指出的那样),否则只能通过更改浏览器中的设置来覆盖该行为。


现在,并非所有的浏览器都有这样的偏好设置。 - Quentin
如果您想在打印文档中包含图像,您应该使用<img>标签,这是有效的。 - aebersold

0

你可以通过打印预览来实现 div 的背景颜色。在 divForBgColor:before 中的边框颜色将成为 divForBgColor 的背景颜色。

.divForBgColor {
    position: relative;
    overflow: hidden;
}

.divForBgColor:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 9999px solid #f1f2f2;
    z-index: -1;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接