我需要根据HTML在屏幕上显示以下div,但是当我打印索赔人名称,案例信息,联系人时,文件应该打印在第一页上,而索赔人姓名,服务应该打印在第二页上
有人可以告诉我一种使用CSS解决问题的方法吗?
<body>
<div>Claimant Name</div>
<div>Case Info</div>
<div>Contacts</div>
<div>Files</div>
<div>Service</div>
</body>
答案 0 :(得分:3)
您不能保证HTML的打印方式 - 这根本不可能。如果您需要保证文档的打印方式,您需要使用iTextSharp或类似的
创建类似PDF的内容答案 1 :(得分:2)
您可以使用CSS在监视器显示屏和打印版本上显示和隐藏各种元素。例如,您可以在文档上使用Claimant Name两次,但第二个隐藏在屏幕上。打印时可以看到它。
然而,您无法在打印网页时控制分页。您可能需要考虑pdf或其他印刷文档格式。与纸质打印输出相比,HTML更倾向于浏览器显示。
答案 2 :(得分:2)
我在CSS Creator发布的答案相同:
DIV没有任何语义含义,所以绝对有更好的方法来标记它。它确实涉及添加第二个名称字段,但我不认为这是任何类型的问题。
<!DOCTYPE html>
<html>
<head>
<title>Le documents judiciaires</title>
<style type="text/css" media="screen">
#secondPage .name {
display: none;
}
</style>
<style title="text/css" media="print">
#secondPage {
page-break-before: always;
}
</style>
</head>
<body>
<div id="firstPage">
<div class="name">Claimant Name</div>
<div>Case Info</div>
<div>Contacts</div>
<div>Files</div>
</div>
<div id="secondPage">
<div class="name">Claimant Name</div>
<div>Service</div>
</div>
</body>
</html>
答案 3 :(得分:1)
使用the page break properties(浏览器支持可变)。确保样式表适用于打印介质。