首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何打印带有所有CSS格式的页面

问如何打印带有所有CSS格式的页面
EN

Stack Overflow用户
提问于 2012-01-06 11:43:08
回答 2查看 3.4K关注 0票数 2

我正在做一个打印功能。我得到的问题是,正在打印的页面没有保留其CSS格式。我在没有CSS的情况下得到打印的纯文本。有谁知道如何打印页面的所有CSS格式不变。

EN

回答 2

Stack Overflow用户

发布于 2012-01-06 11:48:07

您尝试打印的站点很可能具有用于打印的自定义样式表。这个样式表通常经过简化,并使其适合可打印的页面。我认为,除非您能够修改或删除打印CSS文件,否则您对此无能为力。

Intro to print style sheets。

其中一个的示例标记。

代码语言:javascript
复制
<link rel="stylesheet" type="text/css" media="print" href="print.css" />

也许有一些方法可以使用javascript以编程方式删除样式表,但我不确定。

票数 3
EN

Stack Overflow用户

发布于 2013-06-02 00:41:03

对于任何还在疑惑的人来说,简单地说,你可以有一个在链接标记中有‘media=’screen‘的CSS样式表,如下所示:

代码语言:javascript
复制
<link id="Link1" href="../Styles/MainStyleSheet.css" rel="Stylesheet" type="text/css" runat="server" media="screen" />

这将对在浏览器屏幕中看到的内容进行样式设置。

您还可以使用另一个CSS样式表,它的链接标记中包含“media=”print“”,如下所示:

代码语言:javascript
复制
<link rel="stylesheet" href="../Styles/print_voucher.css" type="text/css" media="print" />

这将对用户查看打印预览/在纸张上打印时所看到的内容进行样式化。

如果你放一些类似的东西:

代码语言:javascript
复制
.inprintdisabled
{
 display: none;
}

在您的print_voucher.css文件中。在HTML代码中的任何地方都有一个

代码语言:javascript
复制
<div class="inprintdisabled">

它将在浏览器窗口中显示该div的内容,但不会在打印预览窗口中打印/显示它。

同样,如果您将

代码语言:javascript
复制
.inprintOnly
{
 display:none;
}

在你的MainStyleSheet和

代码语言:javascript
复制
<div class="inprintOnly">

在HTML代码中,可以有一些对象(文本、图像等)不会出现在浏览器屏幕上,但会在打印预览/打印输出时出现。

希望这能有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8753108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档