2008-12-30 40 views

回答

22

下面是一些一般的打印样式使用,以获得更好的打印输出:

/* Print styles */ 
@media print 
{ 
    tr, td, th {page-break-inside:avoid} 
    thead {display:table-header-group} 
    .NoPrint {visibility:hidden; display:none} 
    a {color:#000000} 
} 

顶一个防止表行内分页符

的THEAD风格使得在THEAD标记的任何行重复表格跨越的每个页面。

NoPrint是我用来在屏幕上显示某些内容的类,但不是用于打印。

而且,我喜欢关闭链接颜色。

+1

+1有用的答案,我也 – 2010-03-05 04:06:18

+4

.NoPrint可能比较方便,但它的混合呈现到HTML,这ISN”理想。在打印的CSS文件中最好有一个“不打印”块,并使用分组选择器通过其现有类,元素名称和ID添加元素。 – Beejamin 2011-06-01 23:31:52

1

小心背景图像和颜色。我认为IE的默认行为是不打印背景图片或颜色。

3

你有这个旧的但仍然相关article from Eric Meyer分开列表。

主要的一点是要重新开始,显式地设置边界和marging /填充为0,白色背景,和“显示无”到任何非必要的元件,用于印刷(如某些菜单)

<link rel="stylesheet" 
    type="text/css" 
    media="print" href="print.css" /> 

body { 
    background: white; 
    } 

#menu { 
    display: none; 
    } 

#wrapper, #content { 
    width: auto; 
    margin: 0 5%; 
    padding: 0; 
    border: 0; 
    float: none !important; 
    color: black; 
    background: transparent; 
    } 

然后从那里出发。

8

首先阅读A List Apart的文章(http://www.alistapart.com/articles/goingtoprint/)。他们涵盖了许多您正在寻找的基础知识(扩展链接,粉饰等)。

不要依赖打印预览,确保在测试打印版式时经历整个过程。要节省纸张安装SnagIt或使用Microsoft XPS文档编写器。您可以直接打印图像,而不会浪费任何纸张。

对于长篇文章,请考虑将您的字体更改为serif。网上的文章最容易阅读的是sans-serif(Arial,Verdana),但在打印时请试用Times New Roman或Georgia。

+1

字体不错 - 这是我一直忽略的东西! – nickf 2009-01-06 14:51:58

2

当您定义打印样式时,您必须考虑纸张和物理单位。

  • 以厘米(英寸)为单位设置页边距并以点为单位设置字体大小(就像在OpenOffice中一样)。
  • 创建一个类似'screen'或'noprint'的类,以便能够轻松地移除不需要的材料 。
  • 忘掉花哨的彩色文字。在白色背景上的黑色文本。
  • 考虑删除多余的图像 - 他们可能看起来不太好在黑色和白色
  • 从链接中删除下划线,并使链接具有理智的文字。阅读“检查此页”看起来很愚蠢,其中“this”加下划线。或者,如果你在加下划线文字后加上链接的href,那么它可能会更有用,但看起来不那么好。
8

有一两件事,我一定把我的打印样式表是:

a[href^="http://"]:after{ 
    content: " (" attr(href) ") "; 
} 

此写入下一个链接文本,以便人们谁打印的单据都知道,我们是假设该链接的实际链接去。

我还设置我的正文是打印多一点可读性:

body{ 
    font: 0.9em/1.5em Georgia, "Times New Roman", Times, serif; 
}