使用css样式打印

时间:2012-05-01 14:40:07

标签: c# javascript asp.net css printing

我有一个链接到我的网页的CSS样式表。当我查看网页时,它看起来应该看起来如何,但是当我打印文档时,我再也看不到它的样式了。我已经使用属性media='print'第二次添加了css,但它不起作用。有人知道如何使用window.print()函数并将样式保留在打印文档中吗?

ASPX:

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="cpHead" ClientIDMode="AutoID">
<link rel="stylesheet" type="text/css" media="screen" href="Styles/Site.css" />
<link rel="stylesheet" type="text/css" media="print" href="Styles/Site.css" />
</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="Main" ClientIDMode="AutoID">
    <asp:Image ID="imgHeader" Width="100%" runat="server" />
    <asp:GridView ID="gvPrintData" Width="100%" runat="server" HeaderStyle-CssClass="printGridHeader" RowStyle-CssClass="printGridRow" AlternatingRowStyle-CssClass="printGridAltRow" />
</asp:Content>

.CS:

Response.Write("<script type='text/javascript'>window.print(); window.onfocus = function() { window.close(); }</script>");

网页浏览(它应该如何看): Page

Printedview(它在打印文档上的外观): Doc

1 个答案:

答案 0 :(得分:7)

您的样式表实际上正在工作 - 请查看标题字体。我怀疑发生的事情是浏览器没有打印背景颜色。

转到浏览器中的页面设置/打印设置,检查背景图像和颜色是否已打开。

<强>火狐

Firefox

<强> IE9

IE9