我是网页设计的新手,我一直在寻找答案并尝试了几乎所有我能找到的方法,但无法得到我想要的。好的,我知道在浏览器中将页脚粘贴到页面底部有很多解决方案。但我的问题不是页脚在浏览器中的样子,而是打印出来的样子。我的布局是这样的:
<html>
<body>
<div id="content">
<table>
more divs... more content...
</table>
<table>
more divs... more content...
</table>
....
</div>
<footer>
<table>
....
</table>
</footer>
</body>
</html>
请注意我的内容是动态的,它可以根据用户输入长短。在浏览器中我没有任何问题,页脚位于内容的底部。但是在打印输出中,我希望这个页脚位于最后一页的底部(我希望它主要只在 IE 浏览器中工作。IE 7、8 和 9)。所以如果内容很长,打印了 3 页,页脚应该只出现在最后一页的底部。请告诉我如何完成这项工作?当内容很长时,大多数在线解决方案(如粘性页脚)在打印输出时不起作用...它们会粘在打印输出内容的底部,如您在打印预览中所见。我真的很感激任何帮助。简单的 css 解决方案更好,但如果没有其他解决方案,即使我是初学者,我也准备尝试 js、PHP。
最佳答案
好的,已经有一段时间了,但答案可能会对某人有所帮助。就像我在问题中所说的那样,我需要让它只在 IE 中工作。 .它适用于 IE7 8 和 9。我相信也适用于 chrome。
<html>
<head>
<style type="text/css">
@media print
{
body, html{
height:100%;
padding:0;
}
#wrapper{
position:relative;
min-height:100%;
}
#lines{
padding-bottom:40px;
}
#footer{
position: absolute;
bottom: 20px;
left: 4px;
right: 4px;
}
}
</style>
</head>
<body>
<div id="wrapper">
<div id="header"></div>
<div id="lines">
//main content here
</div>
<div id="footer">
//Footer content
</div>
</div>
</body>
</html>
在我的例子中,我有一个很长的 php 文件,每次都会动态更改内容,所以我不确定这个解决方案是否总是有效。所以我创建了一个包含主要内容的 body.php 和包含页脚内容的 footer.php。然后以上述解决方案的格式创建另一个 php,并将 body.php 包含在“行”div 中,将 footer.php 包含在“页脚”div 中。效果很好。您必须将填充调整为“lines div”
关于php - 如何确保页脚在打印时始终位于最后一页的底部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12656237/