我可以在每个页面上打印标题,但我是新手来打印边距。我认为@page css会起作用,但它似乎不会影响页边距。如果我在主体上设置边距,它适用于第一页,但后续页面在默认情况下开始上边距,将标题放在文本顶部。
<style>
.header {
position: fixed;
top: 0;
}
@page {
size: 11in 17in;
margin-left: 1in;
margin-right: 1in;
margin-top: 1in;
margin-bottom: 1in;
}
</style>
<body>
<span class=header>This is the header</span>
This is the text of the document. (repeat until I get to page 2)
</body>
答案 0 :(得分:9)
所有浏览器的打印支持都得到了很好的支持,许多流行的浏览器中存在可怕的错误,这些错误已经多年没有修复。
简短的回答是,如果您需要确保特定的布局,请避免HTML / CSS打印。使用PDF,可能是按需动态生成的。有各种PDF生成器API,如iTextSharp。可以从Flash打印,但只有在Flash安装并正常工作时(即没有Flashblock,iOS)。
HTML / CSS打印应限于简单的布局。表格打印是fieldset
&amp;的噩梦。 legend
支持特别有问题(特别是在Firefox上)。有趣的是,打印支持最适合互联网浏览器。
CSS3打印支持规范尚未完成,并且暂停一段时间。
一般原则:
不支持任何背景或后台CSS图像(默认情况下 - 用户可以更改其Intranet应用程序的浏览器设置)。只打印前景图像。
当页面大小因行星而异时,宽度需要流畅。 US Letter格式比A4布局更短更宽
所有浏览器都支持以不同方式打印。虫子很多。
使用打印预览进行测试。
答案 1 :(得分:1)
现在已有4年半的接受答案说:
&#34;简短的回答是,如果您需要确保特定的布局,请避免HTML / CSS打印。&#34;
现在,您可以在浏览器中为相对简单的布局进行HTML / CSS打印,或者如果您使用wkhtmltopdf
之类的工具,则可以选择更复杂的布局。另请参阅http://www.toccon.com/toc2013/public/schedule/detail/26714