打印视图和实际打印停止正常工作,angularJS应用程序中的CSS和HTML

时间:2018-02-14 15:16:12

标签: html css angularjs twitter-bootstrap

所以上周我部署了一个应用程序,在一切正常工作之后,基本上你从API中获取了大量数据,这些数据被格式化为表格,并且有一个特定的打印css可以很好地打印它。

一切都工作正常,即使在我检查了一些东西的某些日子之后,今天我收到通知说打印视图完全搞砸了,去检查并且它搞砸了。

没有更改css代码甚至是相关页面上的代码。基本上问题是,在普通的浏览器视图中,一切都运行正常,即使您模拟打印视图,它也会正确显示,但问题会在您实际打印时开始! (或弹出镶边打印预览),所有文字都太大而且重叠,因此单页打印在2页上。

我检查并重新检查,代码与工作时的代码完全相同。 我尝试使用最新版本的Chrome和Firefox进行打印,同时打印2页并缩放内容。

我使用了Bootstrap v3.3.7,应用程序是用angularJS制作的。

我尝试了@media print之类的* {transition: none !important} 内容 我在stackoverflow上找到其他主题,但没有任何效果。

问题不仅仅是字体大小,我目前正在将打印@media中的所有字体大小从px更改为pt,但div也会缩放,我需要更改col-xs-6中的某些类到col-xs-4,以获得div的正确位置和大小。

我注意到的唯一的东西给了我一个星期前的CORRECT打印,设置了Chrome中的打印设置,SCALE = 44或更低,44以下内容很小但一切都正确,放置文本和divs,也许这会告诉你一些我不知道的事情。

对于文本墙感到抱歉,我甚至不知道要诚实地发布什么代码,因为之前一切正常并且css页面很大,我正在抓住可能发生的事情的想法。

编辑:解决方案 通过简单地将所有打印规则从像素更改为点来解决,以便在每个浏览器上正确打印,遗憾的是没有找出它停止工作的原因

1 个答案:

答案 0 :(得分:0)

尝试将您的.ts文件添加到内嵌.css

popupWinindow.document.write('<html><head><style>css here...</style> QR Code </head><body  onload="window.print()">' + innerContents + '</html>');