firefox火狐 window.print() 只能打印出一页

问题描述:

使用firefox火狐浏览器使用window.print()方法,打印出来的结果在打印设置里怎么调都是一页,打印不全。但是该网页用ie或者chrome就可以正常的打印出多页。

火狐版本:52.9

解决思路:

这个问题在百度上只能搜出来一个有用的结果,就是说修改页面css样式,但是到底怎么修改没说。百度靠不住了,只能谷歌。

谷歌搜出来一个大神给出的建议,检查页面使用了overflow和display属性的元素。最后还说一句很吓人的话:“排查起来可能要花一两天了”。不过大概的方向已经知道了。

页面上的元素其实却是很多,但是影响打印分页的无非就是<html><body><div>这三种标签。

<html><body>很好找,分别只有一个,设置如下样式:

html,body{
	overflow: visible;
}

<div>再一想也好找,找到<body>下,覆盖整个页面,最大的那个div就可以了,在这个div的style里加上这个属性就试试:

style="display: block;"

重新打印,终于可以正常打印了,问题解决。

如果修改了样式页面有问题的话,可以尝试使用overflow和display的其他值尝试,或者在div外再嵌套一层专门解决打印的样式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值