关于浏览器打印无法打印背景,需要手动勾选打印背景解决方案

有同事问我怎么解决这种问题,总不可以让用户每次都手动勾选吧。目前思考到两种解决方式:
打印无法打印背景,那么我们的出发点就是可不可以不用背景而使用其他的东西,比如图片本身(同事这里无法使用,原因在于客户可以自定义背景颜色,提供图片并不是最好的选择,毕竟颜色选择器你懂的)
方法一:
使用h5新特性画布canvas,通过画布画出来的一块区域色块是可以在打印中展示的
方法二;
既然背景不能打印,选择的又是背景色,那么是否可以其他可以调整颜色的东西呢,我首先想到了字体,不过不太合适,其实有个更合适的东西那就是边框,我们常通过width,height为0,border来设置三角,这里同样适用,至此完美解决。
注:以上弊端在于,如果打印的东西是列表项,那么就会生成很多辅助性标签,然并没有搜寻到一种方式可以直接在代码中设置打印的背景选中,在性能与用户方便方面只能寻求一种平衡

你可能感兴趣的:(html,浏览器打印)