2015-11-02 83 views
0

我需要一些帮助。HTML打印重叠文本

我想在每个dina4容器后分页并添加page-break命令,但是当我尝试打印所有内容时都在一个页面上。

我怎样才能得到正确的打印输出?

我需要在每个新页面上打印输出像1个dina4容器。

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head> 
<title>Test</title> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<meta name="application-name" content="dtfm"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"> 
<meta name="viewport" content="width=device-width, initial-scale=1.0"> 

<style type="text/css"> 

    @media print { 
     .dina4 { 
      page-break-after: always; 
     } 
    } 

    @media screen { 
     .dina4 { 
      background-color: #eaFFea; 
      position:relative; 
      top: 0; 
      left: 0; 
      width: 210mm; 
      height: 397mm; 
     } 
    }  

</style> 

</head> 

<body style="">  

<div class="dina4"> 
    <img style="position:absolute;top:15mm; left:100mm" src=""> 
    <div style="position:absolute;top:30mm; left:10mm"> 
     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque 
     penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium 
     quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, 
     rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. 
     Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, 
     enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque 
     rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
     Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, 
     blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero 
     venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet 
     nibh. Donec sodales sagittis magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nunc, 
    </div> 
</div> 

<div class="dina4"> 
    <img style="position:absolute;top:15mm; left:100mm" src=""> 
    <div style="position:absolute;top:30mm; left:10mm"> 
     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque 
     penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium 
     quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, 
     rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. 
     Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, 
     enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque 
     rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
     Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, 
     blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero 
     venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet 
     nibh. Donec sodales sagittis magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nunc, 
    </div> 
</div> 

<div class="dina4"> 
    <img style="position:absolute;top:15mm; left:100mm" src=""> 
    <div style="position:absolute;top:30mm; left:10mm"> 
     Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque 
     penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium 
     quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, 
     rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. 
     Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, 
     enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque 
     rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
     Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, 
     blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero 
     venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet 
     nibh. Donec sodales sagittis magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nunc, 
    </div> 
</div> 

</body> 
</html> 
+2

欢迎来到Stack Overflow!寻求代码帮助的问题必须包含在问题本身**中重现它所需的最短代码**。尽管您已经提供了一个示例链接,但如果链接无效,那么您的问题对于其他未来具有相同问题的SO用户将没有任何价值。 –

+0

你有你的HTML的CSS样式表?这可能对帮助至关重要。 – Persijn

+0

不,我没有为这个例子使用任何额外的CSS。 @Paulie_D:我会编辑我的第一篇文章,并尝试为此添加最短的代码示例。谢谢! – Asharad

回答

0

你有一些绝对定位的元素。

它们相对于元素定位于屏幕

当您切换到打印介质时,它们不再位于相对定位的元素内,因此它们相对于文档定位。

三个class=dina4容器不重叠。这是他们内部的元素。

您需要继续相对定位这些元素。

+0

将所有职位更改为相对是解决方案。谢谢 – Asharad