Html 在多个浏览器中打印网页

Html 在多个浏览器中打印网页,html,css,pdf,printing,printing-web-page,Html,Css,Pdf,Printing,Printing Web Page,问题摘要: 我有一个页面,它显示一个html表格,每100px大约有100px的单元格。该表可以是从1列/行到N列/行的任意位置,但我需要创建一个系统,该系统可以跨所有浏览器正确打印此文档 到目前为止我所尝试的: 我当前的解决方案利用了另一个SO问题的答案: 当前解决方案的问题 在使用Chrome的某些情况下,此解决方案的效果相对较好。问题是我们的许多用户使用IE7,但它不能很好地工作,尤其是在打印大型表格时 我有可能的解决方案: 创建一个按钮,该按钮使用当前系统,但它以多种不同的宽度“剪切”页

问题摘要:

我有一个页面,它显示一个html表格,每100px大约有100px的单元格。该表可以是从1列/行到N列/行的任意位置,但我需要创建一个系统,该系统可以跨所有浏览器正确打印此文档

到目前为止我所尝试的:

我当前的解决方案利用了另一个SO问题的答案:

当前解决方案的问题

在使用Chrome的某些情况下,此解决方案的效果相对较好。问题是我们的许多用户使用IE7,但它不能很好地工作,尤其是在打印大型表格时

我有可能的解决方案:

  • 创建一个按钮,该按钮使用当前系统,但它以多种不同的宽度“剪切”页面,以允许水平/垂直/a3(水平和垂直)打印。这无疑是最快的修复方法,但仍然存在IE7无法正常工作的可能性,并且它打印的表格毫无意义(在某些情况下会发生这种情况)
  • 创建页面的PDF文件(包括多个不同大小的变体),以允许用户导出所需的大小。这方面的问题是,我需要投入时间,看看如何做到这一点,并克服我们在非常大的表中遇到的任何问题。就投资/收益而言,这是迄今为止风险最大的
  • 第三种选择显然是放弃整个想法,将页面的逻辑更改为没有表格,而是以不同的方式显示数据。最好避免这种情况
    快速解决方案:使用响应性框架lie bootstrap:

    然后是桌子

    并通过印刷媒体查询对其进行最后的触摸,根据其外观和外观

    或者只使用jquery的解决方案:


    你的Jungerislander

    我认为第一个解决方案是最简单的。问题是,为什么它在IE7上不起作用?你的桌子或其他东西上有花哨的格式吗?您的jQuery版本支持IE7吗?等等


    因为你知道单元格的确切大小,所以你可以在nxm单元格上拆分表格,无论你在打印页面上得到的是什么N和M。如果您有普通表,并且使用支持IE7的jQuery版本,那么这应该可以正常工作。确保表中没有任何row/colspan错误,并且所有HTML都有效。

    使用引导框架肯定会有助于跨浏览器兼容性。Bootstrap还可以让您非常轻松地配置页面中要在打印输出中显示的元素。使用Chrome,你也可以直接保存到PDF,这很酷


    这是我的网站上的一篇文章

    最好的解决方案是使用一些框架,比如bootstrap或者其他人所说的数据表。我向你保证,它会解决你的问题,值得研究。使用这些框架,您可以使用js生成表,这是一个非常优雅的解决方案

    此外,bootstrap框架响应迅速,因此在所有最新浏览器和所有大小的浏览器中都能出色地显示。它将根据浏览器的视口大小对齐表格


    datatable框架也做了几乎相同的事情。但唯一的区别是它提供了一些排序和其他排序功能。基本上,它是建立在引导的基础上的

    您可以修改第一个解决方案,以在分栏处而不是固定宽度剪切表。我看到的唯一问题是列跨距。让服务器将表导出到一个文件(如CSV文件)是否可行,然后将其打印到外部应用程序中或以数字方式存储?尽管您的答案实际上并不能解决我的问题,但我不希望这笔奖金白白浪费。您对我可能存在的坑洞发表了一些评论,但没有完全改变我的系统(特别是因为其他建议涉及大量工作,但没有明确指示它是否会工作)