关于打印页面的一些经验

大家经常遇到再ie中打印表格时需要隐藏一些不需要打印的对象,比如说按钮,输入框,或者希望莫个表格显示的时候表格线是由颜色的,而打印的时候只需要有粗细之分,其实在css中可以设定在打印或者显示的不同样式,最近作了一个应用(实属逼上梁山),可以得到以上效果,下面是我的样式表。。。。
<style type="text/css" media=print>  主要是media选项对照下面的那一个style一起看
.noprint{visibility:hidden}
        span.double {BORDER-BOTTOM-STYLE: double; BORDER-LEFT-STYLE: double;
        BORDER-RIGHT-STYLE: double; BORDER-TOP-STYLE: double; COLOR: mediumblue;
        CURSOR: hand; FONT-SIZE: 12pt; HEIGHT: 22px; LEFT: 314px; TEXT-ALIGN: center;
        WIDTH: 96px}
        select.sb{Z-INDEX: 121; LEFT:0px;WIDTH: 90px; POSITION: absolute;
        HEIGHT: 170px}
        span.tab{LEFT:40px;WIDTH: 900px; POSITION: relative; TOP: 0px; HEIGHT: 225px}
        table{BORDER-RIGHT: black medium inset; BORDER-TOP: black medium inset; BORDER-LEFT: black medium inset; WIDTH: 900px; BORDER-BOTTOM: black medium inset; HEIGHT: 31px;POSITION: absolute}
        tr.col0{BORDER-RIGHT: thick inset; BORDER-TOP: thick inset; FONT-WEIGHT: bold; FONT-SIZE: 15px; BORDER-LEFT: thick inset; BORDER-BOTTOM: 10px ; FONT-FAMILY: 宋体; BACKGROUND-COLOR: blue; TEXT-ALIGN: center}
        tr.tr1{}
        td.td0{WIDTH: 120px; TEXT-ALIGN: center;height:30px;}
        td.td1{WIDTH: 330px; TEXT-ALIGN: right}
        td.td2{WIDTH: 70px;TEXT-ALIGN: right}
        td.td3{WIDTH: 330px;TEXT-ALIGN: right}
</style>

<style media=screen>主要是media选项对照上面的那一个style一起看
        span.double {BORDER-BOTTOM-STYLE: double; BORDER-LEFT-STYLE: double; BORDER-RIGHT-STYLE: double; BORDER-TOP-STYLE: double; COLOR: mediumblue;
        CURSOR: hand; FONT-SIZE: 12pt; HEIGHT: 22px; LEFT: 314px; TEXT-ALIGN: center;
        WIDTH: 96px}
        select.sb{Z-INDEX: 121; LEFT:0px;WIDTH: 90px; POSITION: absolute;
        HEIGHT: 170px}
        span.tab{LEFT:154px;WIDTH: 900px; POSITION: relative; TOP: 30px; HEIGHT: 225px}
        table{BORDER-RIGHT: blue groove; BORDER-TOP: blue groove; BORDER-LEFT: blue groove; WIDTH: 900px; BORDER-BOTTOM: blue groove; POSITION: absolute}
        tr.col0{BORDER-RIGHT: red thick inset; BORDER-TOP: red thick inset; FONT-WEIGHT: bold; FONT-SIZE: 15px; BORDER-LEFT: red thick inset; COLOR: white; BORDER-BOTTOM: yellow 10px solid; FONT-FAMILY: 宋体; BACKGROUND-COLOR: blue; TEXT-ALIGN: center}
        tr.tr1{BORDER-BOTTOM: fuchsia inset}
        td.td0{WIDTH: 120px; BORDER-LEFT-STYLE: none; TEXT-ALIGN: center;BORDER-BOTTOM-STYLE: none}
        td.td1{WIDTH: 330px;BORDER-LEFT: blue thin solid; TEXT-ALIGN: right}
        td.td2{WIDTH: 70px;BORDER-TOP-STYLE: inset; BORDER-RIGHT-STYLE: inset; BORDER-LEFT-STYLE: inset; TEXT-ALIGN: right; BORDER-BOTTOM-STYLE: inset}
        td.td3{WIDTH: 330px;BORDER-TOP-STYLE: inset; BORDER-RIGHT-STYLE: inset; BORDER-LEFT-STYLE: inset; TEXT-ALIGN: right; BORDER-BOTTOM-STYLE: inset}
        td.td5{TEXT-ALIGN: right}
</style>
大家仔细看一下其实只要建立2个style而么个style指向不同的设备,但是在style中使用相同的id,这样再在需要打印和显示是需要不同的样式的对象中引用同一个id号(比如说<td class=td3>。。。。。。</td>)但是有一个重要问题时仔细看我在打印是设定不打印是通过设定“visibility:hidden”来实现的,但是我在实际应用中发现如果在脚本代码中使用了“obj.style.visibility=visible”也就是对莫个对象的visibility进行了操作这时候咋打印的时候也会显示出来,也就是说脚本代码的操作对不同的设备同时有效(但是我想应该有办法对某一个设备准向指定的但是找了半天没发现,也可能是css还没有完善)我最后通过了另一个style属性display了实现了,也就是说在脚本代码中用obj.style.diaplay="block"或者"none"来实现对象的显示这样就不影响打印功能的实现了。
但是总的来说ie的打印还是不完善比如说无法实现分页大量的打印数据,但是在visual .net中我发现微软加入了crystal的报表功能我估计应该可以实现了,但是还没有应用过,以后有机会在向大家汇报。

时间: 2024-10-30 07:47:19

关于打印页面的一些经验的相关文章

ASP打印页面的一些经验

打印|页面 大家经常遇到再ie中打印表格时需要隐藏一些不需要打印的对象,比如说按钮,输入框,或者希望莫个表格显示的时候表格线是由颜色的,而打印的时候只需要有粗细之分,其实在css中可以设定在打印或者显示的不同样式,最近作了一个应用(实属逼上梁山),可以得到以上效果,下面是我的样式表....<style type="text/css" media=print> 主要是media选项对照下面的那一个style一起看.noprint{visibility:hidden}span.

秋色园QBlog技术原理解析:性能优化篇:打印页面SQL,全局的SQL语句优化(十三)

文章回顾: 1: 秋色园QBlog技术原理解析:开篇:整体认识(一) --介绍整体文件夹和文件的作用 2: 秋色园QBlog技术原理解析:认识整站处理流程(二) --介绍秋色园业务处理流程 3: 秋色园QBlog技术原理解析:UrlRewrite之无后缀URL原理(三) --介绍如何实现无后缀URL 4: 秋色园QBlog技术原理解析:UrlRewrite之URL重定向体系(四) --介绍URL如何定位到处理程序 5: 秋色园QBlog技术原理解析:Module之页面基类设计(五) --介绍创建

使用网页代码“截取”功能,打印页面某段定义区域内容

打印|网页|页面 以前用户在打印网页内容时,一般直接选择IE的打印功能就行.有的WEB页面上也有"打印此文档"的链接功能,引用的也是"window.print();",类似于手工打印页面. 一般我们用到网页的打印,都仅对页面上的主要内容感兴趣,一些相关的广告图片.无用的文字信息等都可以排除.如果需要实现这样的效果,则使用上面的方法肯定是不可取的.上次我在写域名查询的时候,使用了XML,同时处理查询反馈信息是进行截取的方法,即仅对有用处的信息进行读取.其实网上那些所谓

在Word 2010文档中使用逆序打印页面

所谓逆序打印即从Word文档页面的尾部开始打印文档,直至Word文档页面头部 .通过逆序打印方式打印完成的纸质文稿将按正常页码序排列,这对于页数较多 的Word文档而言更易整理纸质文稿.在Word 2010文档中设置逆序打印页面的步骤 如下所述: 第1步,打开Word 2010文档窗口,依次单击"文件 "→"选项"命令,如图2011121301所示. 图 2011121301 单击"选项"命令 第2步,打开"Word选项"对话

excel中怎么利用缩放功能快速设置打印页面?

  excel中怎么利用缩放功能快速设置打印页面?高效的利用页面设置,进行打印不仅能够提高工作效率,更能够节约纸张. 1.在打印的过程中,经常遇到这样的情况,页面设置好后,打印预览之后会发现,最后一页只有很少的内容,可以少打印一张,这就必须重新调整页边距,这样不仅仅是麻烦的问题,而且你调整来,调整去,总感觉不合适.举例说明,如图,我们会发现这个文件,打印的时候第三页的内容很少,可以用两页纸进行打印. 2.打开"页面设置"对话框,在"缩放"功能下"调整为&q

阿云浏览器如何打印页面

  当您需要打印页面时,您可以进行如下操作:点击"云logo " --"页面和标签"--"打印",如下图所示: 或者您也可以直接使用快捷键:"Ctrl+P"来打印当前页面.

Excel怎么设置打印页面边距

  要想打印一份既简洁又漂亮的表单出来,不仅仅是会设计制作表单,还要学会设置页面边距.将表单拿在手里一看,左边宽右边窄,上边多了下边少了,就算这份表单设计得多么完美,那也要减去不少印象分,呵呵,因小失大啊!下面我们一起来看看. 方法/步骤 1.首先打开一份文档,输入我们需要打印的内容,当然表单设计得更加完美,那就是锦上添花. 2.点击工具栏中的"页面布局",再在子菜单中选择"页边距",然后在下拉菜单中选择"自定义边距". 3.在页面设置对话框中点

js调用iframe实现打印页面内容的方法

 这篇文章主要介绍了js调用iframe实现打印页面内容的方法,需要的朋友可以参考下 1.程序说明   1) 此程序可以实现选择页面中的区域进行打印,以iframe方式进行打印: 2) 与原生态的print() 区别在于,取消打印页面后可以完整保留当前访问页面的内容.   2.代码部分   1) JS 函数:  代码如下: function do_print(id_str)//id-str 打印区域的id { var el = document.getElementById(id_str); v

打印机双面打印页面灰色不让选择该怎么办?

  打印机双面打印页面灰色不让选择该怎么办?此方法解决有关打印机操作页面双面打印无法选取,页面属性部分灰色的问题 1.打印时设置打印成双面,发现打印页面显示双面打印选项部分灰色无法选取,那么下面的内容就会给你解决此问题 2.左击"开始"在弹出的对话框里选择"打印机和传真" 3.左击"打印机和传真"弹出对话框,在当前对话框里选取相应的打印机,右击选择"属性"选项 4.选取"属性"选项后弹出属性对话框,在对话框