2012-03-06 72 views
2

我有一个打印机友好的页面,除了页眉和页脚。我可以添加只打印页面正文并且没有彩色背景的打印按钮吗?或者我需要将它们链接到一个新页面,然后让它们再次点击打印?如果我能避免,我宁愿不介绍这些额外的步骤。我是否需要不同的html页面进行打印?

回答

7

我是否需要不同的html页面进行打印?

没必要。您可以使用不同的print CSS,这将在打印时专门使用。这里面的CSS,你可以在页面上不同的个性化元素的外观:

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

media="print"意味着打印时,这个CSS将只适用。

您还可以结帐print.css库。

0

您可以通过CSS完成此操作,只需设置要打印的介质即可。

@media print 
{ 
    /* Print specific styles go in the braces */ 
} 
3

我可以添加一个打印按钮,打印页面的只是身体,并 没有彩色背景?

您可以通过设置打印机指定样式:

@media print { 
.print { 
    background:#fff; 
    } 
} 

应用print类要改变印刷的行为元素。

+1

这是一个伟大的小费!我知道它应该看起来很明显......但它确实可以帮助在页面上使用'.print'类识别。不错的演出! – Tim 2012-03-06 17:49:40

0

所有你需要做的(如达林指出的)是增加一个CSS文件您的打印布局。您需要使用正确的media类型,以确保您的CSS文件只要求印刷:

0

这是怎么了,我通常与一些jQuery的做到这一点:

$(function(){ 
// Hook the print link 
$("a").attr("href", "javascript:void(0)").click(function(){ 
// Print the DIV that you want to be printble 
// Maybe you want to change the style of that printable div. 
    $(".printable").print(); 
// Cancel click event. 
return(false); 
}); 
}); 

的想法是,你有一个想要打印的div,你勾住了打印按钮,然后用div去做任何你想要的东西,然后打印出来。

0

你可以尝试这样的事情:

@media print { 
    body { 
     background-color: white 
    } 

    div.header, 
    div.footer { 
     display: none 
    } 
}