我需要一个不同的html页面进行打印吗?

时间:2012-03-06 17:45:30

标签: php javascript html

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

10 个答案:

答案 0 :(得分:7)

  

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

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

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

media="print"表示此CSS仅在打印时应用。

您也可以结帐print.css库。

答案 1 :(得分:4)

您可能需要查看使用打印样式表。

这是一个可能有用的链接

http://line25.com/tutorials/handy-tips-for-creating-a-print-css-stylesheet

这是我建议的路线,您可以将样式表分开以进行屏幕和打印。

答案 2 :(得分:3)

  

我可以添加仅打印页面正文的打印按钮,以及   没有彩色背景?

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

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

print类应用于要更改打印行为的元素。

答案 3 :(得分:1)

您可以添加新的特定于打印的样式表,并在该样式表中隐藏用户打印页面时不想显示的任何元素。

这是一个方便的链接,如何做到这一点:

http://meyerweb.com/eric/articles/webrev/200001.html

答案 4 :(得分:0)

您可以通过CSS完成所有操作,只需将媒体设置为打印即可。

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

答案 5 :(得分:0)

只需添加print media stylesheet

无需添加自己的按钮或创建重复的页面。浏览器的打印控件非常好。

答案 6 :(得分:0)

答案 7 :(得分:0)

你需要做的就是(如Darin指出的那样)是为你的打印布局添加一个CSS文件。您需要确保仅使用正确的media类型

调用CSS文件进行打印

答案 8 :(得分: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做任何你想做的事情,然后打印出来。

答案 9 :(得分:0)

您可以尝试这样的事情:

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

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