2014-03-13 241 views
8

我有一个网页,其中包含一些背景图像和CSS颜色,但当我打印页面使用ctrl + p其显示页面打印预览没有CSS和背景颜色。强制浏览器打印铬,火狐

我有了内嵌样式属性(因为div的背景图像将被动态地使用循环在编码中选择)一个div元素如下

<div class='assessment' style='background-image: url('/static/images/print_%s.png')' > 
    <p></p> 
    <p></p> 
</div> 

所以我脑袋读的东西here,我们可以写print media CSS默认情况下,使背景图像和颜色可见像

@media print { 
.assessment { 
    visble:visible; 
    } 
} 

但我不知道如何写这个媒体的CSS内联CSS(style='background-image: url('/static/images/print_%s.png')),我有以米y以上div

那么如何用内联css编写媒体css,以便在打印预览中可以在默认情况下显示背景图像,当点击一下ctrl+p

+0

您是否尝试过使用'@media print'方法? – Scimonster

+0

@Scimonster我很困惑如何使用它?你可以让我知道如何使用它与我的上面的内联CSS样式属性? –

+0

嗯,将它设置为可见,应该使背景显示出来,从你所说的。 – Scimonster

回答

0

如何使用@media print方法?

@media print { 
body { 
    content:url(background.jpg); 
    } 
} 

同时给予打印选项有一些设置,你可以选择很多选项可以打印背景图像或不..

+0

正如我上面所描述的,我将在循环中选择不同的背景图像,所以我已经使用背景图像的内联属性,是我写媒体CSS如上,那么我将不得不显示固定的背景图像的权利?我将在动态背景图像中生成上面的div for循环 –

+0

不幸的是,内联样式不能包含除声明之外的任何内容。 –

4

answer会帮助你。它适用于FF和Chrome。首先,您将!important设置为您的内联css,如<div class='assessment' style='background-image: url('/static/images/print_%s.png')!important >。然后在你的css文件中:

@media print { 
    -webkit-print-color-adjust: exact; 
} 
+0

任何线索为什么添加!这里重要,导致我的背景图像完全消失? –

相关问题