24

我在哪里做错了?

这是正常的打印预览: 这是第一张照片

但我想看这张图(不拖边距箭头) 替代文字

这是css代码和预览:

替代文字

4

5 回答 5

31

是的。可以更改页面打印输出中的页边距。规则如下所示:

@page {
    margin: 0;
}

到目前为止,这在 Firefox 中不起作用。如果您在@page CSS 支持上查看他们的开发人员参考资料,您可以看到浏览器支持哪些内容@page

于 2012-06-25T15:37:21.227 回答
21

你能做的最好的就是设置@page边距。但是请记住,如果您将边距设置为 0,您可以并且很可能会被否决。

于 2009-06-04T19:27:45.590 回答
6

谢谢 !在 chrome 上运行良好

@page {
    margin: 0;
}
于 2017-10-12T11:11:20.223 回答
0

我认为实际上不可能这样做,因为您会否决用户计算机上的默认设置。据我所知,如果没有 IE 中的某种 ActiveX 脚本,Web 应用程序没有访问权限来更改打印机设置等内容。

不久前我遇到了类似的问题,最后不得不使用 TCPDF 即时生成 PDF。最后效果更好,因为您可以更好地控制布局。

于 2012-06-07T14:16:29.017 回答
0

我被阻止将计算机从 Windows XP 升级到更新的版本,所以基本上我只能使用 IE8。

我发现在 IE8 上,页边距始终是左右最小 6.01 毫米,上下 5 毫米。无论我做什么,即使在@page 规则中使用@top-left right 和center 规则,它仍将默认为上述值。

创建样式表以考虑对打印大小的限制可能更容易。

将 IE hack \9 放在 CSS 类属性值前面也可能会有所帮助,复制属性在某些情况下也可能会有所帮助(但不会影响页面的边距),例如:

.aDiv {
    margin: 10mm;
    margin: 15mm\9;     //this \9 hack will set that value only on IE8.
}

我知道还有其他类似的技巧,例如 \0 但我承认并不完全理解它们。\9 在某些情况下适用于 IE8。

于 2017-01-04T09:46:43.013 回答