CSS @media print控制浏览器web打印样式
2023-09-08 11:53:27
juzhen
0
浏览器打印,可以通过 window.print() 、document.execCommand(‘print’) 调用浏览器打印。不同浏览器的区别:在Safari和Chrome都会弹起打印预览的窗口,FireFox和 IE 没有预览而是直接让你选择打印机,但是直接使用浏览器打印虽然省事,但是存在很多问题,无法满足我们的打印需求:
1、打印的是整个网页,不能打印局部内容;
2、打印不支持自定义分页行为,默认不支持批量打印;
3、打印的时候样式有问题,所见非所得;
4、打印可以准确识别的样式单位是绝对单位(如pt、mm、cm),对相对单位识别不同打印机可能会得到意想不到的结果;
@media print里面的内容只对打印出来的内容有效,之外的内容就是屏幕显示的样式。
打印默认是A4的尺寸,如果超过了会被隐藏,在css控制合适的缩放比例:
用于伪类修改样式:left
、:right
、:first
。
通过:left
和 :right
设置左右页面不同样式,并不代表用户代理会将页面双面打印
:first
用于匹配到文档的第一页
分页:page-break-before
page-break-before用于设置元素前面的分页行为
完整样式