Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html TDs背景色在打印预览中不可见_Html_Css_Browser_Printing - Fatal编程技术网

Html TDs背景色在打印预览中不可见

Html TDs背景色在打印预览中不可见,html,css,browser,printing,Html,Css,Browser,Printing,我有这样的想法: <td align="left" bgcolor="#FF0000"> 在浏览器中,应用了红色背景色,但当我看到打印预览时,背景中没有红色。字体颜色也是白色的,但在打印预览时也会转换为白色 有人知道原因是什么吗 谢谢每个浏览器对背景颜色的打印都有不同的支持,默认情况下通常是关闭的。例如,在中,它是打印对话框中名为“打印背景”的选项。我不确定该选项在其他浏览器中的位置。如果可以,请尝试使用CSS,如果背景与打印版本不兼容,请指定打印CSS文档 基本CSS如下

我有这样的想法:

<td align="left" bgcolor="#FF0000">

在浏览器中,应用了红色背景色,但当我看到打印预览时,背景中没有红色。字体颜色也是白色的,但在打印预览时也会转换为白色

有人知道原因是什么吗


谢谢

每个浏览器对背景颜色的打印都有不同的支持,默认情况下通常是关闭的。例如,在中,它是打印对话框中名为“打印背景”的选项。我不确定该选项在其他浏览器中的位置。

如果可以,请尝试使用CSS,如果背景与打印版本不兼容,请指定打印CSS文档


基本CSS如下:


运输署{
背景色:#FF0000;
}

要使WebKit浏览器(Safari、Google Chrome)打印背景图像或颜色,应向元素添加以下css样式:

-webkit-print-color-adjust: exact;

我自己也遇到了这个问题,我相信我有一个解决办法。我最初是用H1标签做的,但后来用同样的代码做TD

h1 {
    background-color:#404040;
    background-image:url("img/404040.png");
    background-repeat:repeat;
    box-shadow: inset 0 0 0 1000px #404040;
    border:30px solid #404040;
    height:0;
    width:100%;
    color:#FFFFFF !important;
    margin:0 -20px;
    line-height:0px;
}
这里有几件事需要注意:

  • 背景色是绝对的退路,主要是留给后代的
  • 背景图像使用一个1像素的404040制作成PNG。如果用户启用了图像,它可能会工作,如果没有
  • 设置长方体阴影,如果不起作用
  • 边框=所需高度和/或宽度的1/2框、实心、彩色。在上面的例子中,我想要一个60像素高的盒子
  • 根据您在“边框”属性中控制的内容,将高度/宽度归零
  • 字体颜色将默认为黑色,除非您使用!重要的
  • 将线条高度设置为0,以修复没有物理尺寸的长方体
  • 制作并托管您自己的该死PNG;)

请参阅my以获得更详细的演示。

正如@doug neiner所提到的,这并不适用于所有浏览器,仅仅使用CSS是不起作用的。我看不到@doug neiner对CSS的任何提及。OP还询问了打印时的字体颜色。你记下来了?这不行。Chrome和FF在打印时都会忽略CSS背景色。非常好用,谢谢Marco!