如何在 django 的打印页面(模板)中设置背景图像

Posted

技术标签:

【中文标题】如何在 django 的打印页面(模板)中设置背景图像【英文标题】:how to set background image in print page(template) in django 【发布时间】:2013-06-06 23:01:37 【问题描述】:

CSS:

table.print
    width:123px;
    height:298px;
    background-position:center;
    background:url(' STATIC_URL images/human.png'); 

html

<table id="human-body" class="print" >
    <tr>
        <td>some data</td>
    </tr>
</table>

上面的 HTML 在我的应用程序中用作 django 中的打印模板。我的问题是,我使用上面的 CSS 将背景图像应用到打印页面。但是,如果我按下打印按钮并看到打印预览,则缺少背景图像。我也检查了用纸打印它,图像丢失了。

【问题讨论】:

【参考方案1】:

如果您要打印背景图片,请按照以下步骤操作

1.在 Chrome 和 Safari 网络浏览器中启用后台打印添加

-webkit-print-color-adjust:exact;

在你的 print.css 文件中,其余的都是一样的

2.在FireFox中默认"Print Background colours and images"在他们的打印设置中关闭,no CSS will override that.

如果需要背景图片,用户应手动开启。

FF开启背景步骤:

Go to File -->Page setup -->Formats & Options -->Tick Print background(images & colors)

【讨论】:

迟到的答案,我解决了也参考这个帖子***.com/questions/11242991/…【参考方案2】:

您不能在 css 文件中使用 STATIC_URL。只能在模板中使用。

【讨论】:

在css中如何设置图片url,我用的是django 只写完整链接:background:url('../images/human.png'); 这种方式我也试过了,但没有应用表格的背景图片。

以上是关于如何在 django 的打印页面(模板)中设置背景图像的主要内容,如果未能解决你的问题,请参考以下文章

如何在 django 模板中设置页面范围的索引

如何在 Django 模板中的“带有模板标签”中设置 Django 渲染块值?

如何在 django 模板中设置自定义 forloop 起点

如何在 django 表单中设置自定义 HTML 属性?

如何使用 window.print 在打印预览中设置默认选中/启用的背景图形选项

如何在 django 中设置健康检查页面