嘿伙计们我正在寻找如何处理问题的选项,因为我认为没有一个简单的解决办法。
我们正在处理一个非常顽固的客户端,它不想接受默认情况下浏览器不打印css背景的事实。
他确信XP正在运行IE 6& 7是最常见的浏览器,我们是不支持它们的坏公司。 (我已经向我们典型客户的访问者展示了他的分析,但它没有改变主意)。我正在改写他的网站来处理它们,但我现在仍然坚持打印。
他希望(需求是一个更准确的术语)使页面打印与网站上的页面完全一致,并且它们在所有操作系统中看起来完全相同。浏览器。我不认为将所有图像放在html而不是css中是可行的,我已经尝试了列表式的提示而没有运气。网站的大量颜色也来自背景css颜色。
还有其他选择吗?甚至是关于如何处理这个客户的建议?
答案 0 :(得分:1)
尝试类似:
<style type='text/css'>
@import 'whatever.css' screen, print;
</style>
确保@import
高于所有其他CSS代码,并确保您拥有用于页面的CSS的外部样式表。
答案 1 :(得分:1)
这是一种略有不同的方法: 我会考虑将网页转换为可以打印的pdf。 转换的一个好方法是通过一个名为PhantomJS的产品。它本质上是一个无头浏览器,可以呈现页面并将其转换为动态PDF格式。您可以通过运行PhantomJS服务器进行集成,并在原始页面上添加链接以下载pdf。
然后,pdf将在所有浏览器中一致地打印页面。然而,还有相当多的额外工作,所以你必须考虑它是否适合你的需求和时间表...... 此解决方案的额外复杂性在于您必须在某处托管PhantomJS javascript服务器,使用API编写PhantomJS脚本以将页面转换为pdf。 Pdf和图像转换相对容易,但如果您的页面需要登录,您还必须考虑身份验证。 PhantomJS会将转换后的文件写入服务器上的磁盘,因此您还必须管理用户浏览器的下载。
总而言之,这是一大堆工作,但你可能会觉得至少要了解它很有趣: - )。
更多信息: http://phantomjs.org/