是否有一种技术可以在打印时在每个页面的底部添加文本页脚?例如“版权所有我的公司2010” - 我知道可能有一种方法可以使用CSS实现背景图像,但我真的很想为这部分使用文本,以便客户端可以对其进行编辑。有任何想法吗?在打印网页时在每个打印页面的底部添加文本页脚
2
A
回答
3
CSS没有任何页面媒体的概念,所以它不可能保证分页将自然发生的地方。
编辑正如指出的下方,CSS 2.1做了介绍@page
的方式来处理页面媒体,但它是never implemented跨越常见的浏览器。所以,正如我上面写的,它不存在,虽然这在技术上并不正确。
您可以设置硬分页符,例如在大概的位置放置<div class="page-break">
。然后,您可以使用page-break-before:always
进行设计,以确保在那里发生中断。
还有一个page-break-after
属性;但是然后你不知道元素开始的页面有多远。所以,当你需要定位它时,唯一可以使用的是position:absolute;bottom:0
,它不会将其固定到页面媒体,而是固定到整个文档的底部。
如果您使用page-break-before
,那么您知道它总是出现在页面的顶部。然后,您可以使用position:absolute
而不给出top
或bottom
,这样只会将其从文档流中提取出来。然后,给它一个720pt(10英寸)的高度意味着你有一个底部边缘,你可以对内容进行定位。
这是我会怎么对付它:
/* hide the page footer on screen display */
.page-break { display: none; }
@media print {
/* make a 10-inch high block that sits on top of the page content */
.page-break {
page-break-before: always;
display: block;
position: absolute;
height: 720pt;
}
/* stick the contents of .page-break to the bottom of the 10 inch block */
.page-break .copyright {
position: absolute;
bottom: 0px;
}
}
但是,我不知道如何实际上浏览器都支持这个现实。我记得前几次玩分页,最后放弃了,因为我无法让他们足够可靠地工作。我怀疑它仍然是不可能的,或者非常黑客和不可靠。
0
CSS分页媒体模块3级的W3C工作草案包含一个打印边距的方法。
试试这个代码,但它可能尚未得到广泛支持。
@page {
margin: 2cm; 2cm; 2cm; 2cm;
@bottom-center { content: "Copyright My Company 2010" }
@top-right { content: counter(page) }
}
相关问题
- 1. JQuery打印客户页脚底部的每个页面
- 2. 在打印HTML页面时添加页眉/页脚
- 3. 在每个页面上打印页眉
- 4. Crystal Reports页脚未打印在页面底部
- 5. 将页脚对齐到打印的HTML页面的底部?
- 6. 打印:如何将页面上的页脚粘贴到底部?
- 7. 在每个打印页面上设置HTML页脚图像
- 8. 表格页脚应在每页的底部显示在html中打印
- 9. 添加页脚以打印网页并设置页边空白
- 10. 如何在每个打印页面上打印GridView的标题
- 11. 在每个页面打印尽可能多的元素打印
- 12. IE11打印网站在每页底部丢失线条
- 13. 使用TCPDF将图像打印到每个页面的底部?
- 14. 打印页面
- 15. 从Crystal Report Viewer打印外部页眉和页脚时正在打印
- 16. Laravel页面错误 - 在每页的顶部打印1
- 17. IE8只打印页面1的网页
- 18. 如何重新打印每个报告页面的页脚
- 19. 在打印页面上添加动态页面的标题
- 20. 在打印的特定页面的底部创建一个div
- 21. 打印一页网页
- 22. 打印VSTO项目的每个页面
- 23. PHP_printer打印双面打印(双面)页
- 24. 问题在打印网页
- 25. 在网页上打印HTML
- 26. 在横向打印页面
- 27. 打印多个页面,空间页面
- 28. ActiveX打印网页
- 29. CSS打印网页
- 30. 如何在打印页面上打印页眉徽标
标题和问题有冲突。请确认这是每张印刷页底部所需的,而不是每个网页一次。 – 2010-10-29 05:31:36
是的,所以在打印多页文档时,页脚需要在每个物理页面上出现。 – Thomas 2010-10-29 05:34:08