我正在尝试使用wkhtmltopdf创建PDF文件。我想在页面底部放置一个div。 我的环境是Windows 10,wkhtmltopdf 0.12.5
html
<!DOCTYPE html>
<html>
<head>
<style>
.footer {
position: absolute;
bottom: 0;
width: 100%;
}
</style>
</head>
<body>
<div>
some text
</div>
<div class="footer">
Footer info
</div>
</body>
</html>
Firefox,镶边和边缘将页脚置于底部,但是使用命令
运行html文件时"c:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe" page.html page.pdf
我在做什么错?我还尝试将css链接为一个单独的文件,但这也不起作用(结果相同)。
答案 0 :(得分:1)
页脚的css位置取决于视口大小,视口大小是浏览器的客户端(窗口)大小。当您调整窗口大小时,您将意识到页脚仍位于浏览器的底部。
wkhtmltopdf在虚拟视口中以未指定的大小呈现html。由于您的HTML无法扩展此视口,因此,其呈现方式就好像位于浏览器窗口中一样,以最小的高度容纳您的内容。
wkhtmltopdf中内置了对页眉和页脚节的支持。如果将页脚内容生成为单独的 HTML文件,则可以使用以下命令行将页脚放在生成的文档的底部,默认情况下为A4大小:
"wkhtmltopdf.exe" --footer-html "footer.html" "input.html" "output.pdf"
还可以在文档中搜索“页眉”和“页脚”关键字,以查看页面布局选项:
答案 1 :(得分:1)
我将Ishmaeel的回复标记为正确答案,因为我认为他的建议是最正确的,尽管我不希望被迫为页脚/页眉使用单独的文件。我喜欢选项,不一定是义务。
但是,对我来说,至少在我有时间做正确的事情之前,通过移除该问题可以解决
<!DOCTYPE html>
做到了这一点,而我的逻辑没有任何改变。