用于打印的页面设计

作者:zhusun 时间:2009-07-06 12:47:00 

在网站的一些应用中需要提供用户直接打印页面的功能,最明显的就是电子优惠券,商家根据网站提供的模板输入内容,然后生成优惠券页面,用户打印这个页面即是优惠券。

当然最优的做法是根据这个页面生成一个图片文件,用户下载这个图片再去打印,打印的效果就不会受浏览器的设置而受影响打印出来的效果。

但如果由于一些原因,为了快速或者节约成本,不去将页面存为图片文件的操作,那么就只有直接将HTML页面直接打印下来,这样就需要在对页面的设计中有一些额外的要求,这里提出两个地方需要注意:

1.对style标签的属性设置:

<style type=”text/css” media=”print”>

这里表示该style内引入或者定义的样式属性仅仅在打印的时候使用,这里提醒一下,如果没有设置media属性,那么定义的样式将在浏览器和打印时都起效,所以建议将类似这样的样式放在所有常规样式之后。比如我们希望在打印出来的页面上有一行“打印与雅虎口碑网”,但在浏览器中并不现实:

<p class=”printTitle”>打印asp之家 aspxhome.com</p>

那么我们就可以在统一样式中设置.printTitle{display:none;},而在后面的media为”print”的样式中设置为.printTitle{display:block;}。在定义的打印样式并不是在打印时的优先级会高于常规定义的样式,所以再次建议将打印样式放在所有常规样式之后。

2.在页面打印的时候浏览器的设置会对打印的效果有影响,在IE中的“工具”–“Internet选项”–“高级”中有一个“打印背景颜色和图像”,类似的在Firefox中“文件”–“页面设置”中有一个“打印背景颜色和图像”,当这个选项被选中的时候,页面中的背景颜色和图片都可以打印出来(有些不标准的IE内核浏览器似乎有些问题,背景颜色可以打印出来,但是背景图片不行),如果没有选中则背景颜色和图片都无法打印出来,所以为了屏蔽用户不同的浏览器和浏览器设置,我建议两点,第一是在用背景色填充的区域作为分界的地方加上1px的边框,颜色和背景色一样,这样在浏览器中看不出来变化,而在打印的时候即使用户的设置导致背景色无法打印出来也可以有一个边框来作为分割,最大层的上保留了页面格局;第二是对所有必不可少的图片都使用<img/>标签,这样无论用户浏览器怎么设置都可以将这些图片打印出来,可能这样与平时一些页面设计方式不同,但为了统一打印的效果,也只要让步了。

我这里简单的提出了一些在实际运用中遇到的问题,如果大家还有什么新的问题和想法,可提出来共同谈论,在这里先抛砖了;

标签:功能,设计,打印
0
投稿

猜你喜欢

  • 隐藏修改文件时间和文件属性的ASP脚本

    2011-03-17 11:15:00
  • 理解 SQL Server 中系统表Sysobjects

    2009-01-20 15:13:00
  • Http头 Range、Content-Range

    2010-06-25 19:19:00
  • 如何用css制作有趣的按钮

    2008-03-17 13:54:00
  • 画好线框图的20个步骤

    2009-09-01 19:46:00
  • 教你如何升级SQL Server数据库系统

    2009-01-19 14:42:00
  • MYSQL初学者扫盲

    2009-02-27 13:15:00
  • Oracle数据操作和控制语言详解

    2008-01-16 19:18:00
  • asp如何编写翻页函数?

    2009-11-07 18:46:00
  • CMS不要让MySQL为你流泪

    2008-12-11 14:38:00
  • 获取mssql的xml返回结构的方法

    2007-08-23 12:52:00
  • Javascript:keyCode键盘键码值表

    2008-02-21 13:16:00
  • 科讯CMS编辑器会自动更改代码

    2008-12-12 13:00:00
  • 斜角滑动门导航条 DIV+CSS

    2008-07-19 15:45:00
  • 增加 javascript 的 trim 函数

    2008-04-20 16:54:00
  • asp连接各种数据库代码

    2008-03-11 11:16:00
  • JS获取对象代码总结

    2011-03-07 16:14:00
  • 从数据表中取出第n条到第m条的记录的方法

    2009-02-19 13:40:00
  • js 操作cookie的教程

    2008-03-05 13:08:00
  • SQL存储过程初探

    2009-09-09 14:22:00
  • asp之家 网络编程 m.aspxhome.com