我正在做一个打印功能。我得到的问题是,正在打印的页面没有保留其CSS格式。我在没有CSS的情况下得到打印的纯文本。有谁知道如何打印页面的所有CSS格式不变。
发布于 2012-01-06 11:48:07
您尝试打印的站点很可能具有用于打印的自定义样式表。这个样式表通常经过简化,并使其适合可打印的页面。我认为,除非您能够修改或删除打印CSS文件,否则您对此无能为力。
其中一个的示例标记。
<link rel="stylesheet" type="text/css" media="print" href="print.css" />也许有一些方法可以使用javascript以编程方式删除样式表,但我不确定。
发布于 2013-06-02 00:41:03
对于任何还在疑惑的人来说,简单地说,你可以有一个在链接标记中有‘media=’screen‘的CSS样式表,如下所示:
<link id="Link1" href="../Styles/MainStyleSheet.css" rel="Stylesheet" type="text/css" runat="server" media="screen" />这将对在浏览器屏幕中看到的内容进行样式设置。
您还可以使用另一个CSS样式表,它的链接标记中包含“media=”print“”,如下所示:
<link rel="stylesheet" href="../Styles/print_voucher.css" type="text/css" media="print" />这将对用户查看打印预览/在纸张上打印时所看到的内容进行样式化。
如果你放一些类似的东西:
.inprintdisabled
{
display: none;
}在您的print_voucher.css文件中。在HTML代码中的任何地方都有一个
<div class="inprintdisabled">它将在浏览器窗口中显示该div的内容,但不会在打印预览窗口中打印/显示它。
同样,如果您将
.inprintOnly
{
display:none;
}在你的MainStyleSheet和
<div class="inprintOnly">在HTML代码中,可以有一些对象(文本、图像等)不会出现在浏览器屏幕上,但会在打印预览/打印输出时出现。
希望这能有所帮助。
https://stackoverflow.com/questions/8753108
复制相似问题