我在使用Firefox打印时遇到了大麻烦(任何版本,我的版本都是16.0.2,但即使是Aurora开发版也是如此)。 打印页面时,缩小到适合打印预览不起作用。只有这样,如何将页面装到纸上才能在同一个对话框中选择“缩放70%”。 其他问题: 它只打印第一页。 怎么办?
答案 0 :(得分:15)
我需要调整CSS文件进行打印,所以我做了一个。它可以在任何地方完美运行,但不适用于Firefox。出了什么问题?
首先,我尝试在print.css文件中为BODY和HTML指定宽度和高度。比利润率等
后来我发现了问题所在: 标准CSS文件中包含以下内容:
body {
...
overflow-x: hidden;
overflow-y: scroll;
}
所以我在print.css文件中添加了以下内容:
body {
overflow-x: visible;
overflow-y: visible;
}
我想,如果您只在CSS中指定了溢出,而不是-x& -y,您需要在print.css文件中仅指定overflow:visible。
从Firefox打印现在可以正常工作。我只是想,这可能会帮助那些在Firefox中发生奇怪打印行为的人。
答案 1 :(得分:1)
除了Kokesh的回答,有时属性
display: table
也会产生这个问题。因此,您需要将其更改为“阻止”或其他适合您的要求。
答案 2 :(得分:0)
我尝试了其他答案中提出的修正,但他们并没有为我解决问题。经过大量的研究和试验,错误,我发现{A}分开了this article。我持怀疑态度,因为它已经很老了,但它说明了:
如果浮动元素超出打印页面的底部,则浮动的其余部分将有效消失,因为它不会在下一页打印。
因为我有一个大的浮动容器,我以为我试一试。所以,我从其他答案和本文中得到了一个混合,并提出了这个:
body {
overflow: visible !important;
overflow-x: visible !important;
overflow-y: visible !important;
}
/*this is because I use angular and have this particular layout*/
body > .fade-ng-cloak {
height: 100%;
display: block;
flex: none;
float: none;
}
.l-content,
.l-sidebar {
float: none;
}
基本上是这样的:
overflow: visible
display: block
包装的元素,消除所有flex
样式并在必要时重置高度float
这种混合对我有用!我很高兴我以为我会分享:)。