CSS实现不同的打印和屏幕显示结果

本文介绍如何通过CSS媒体查询实现屏幕显示与打印样式的分离,包括使用独立的CSS文件、import方式及在同一文件内区分样式的方法。
通常的web页面中,我们要求打印结果和显示结果一样,但在一些报表或业务系统中,我们可能只需要打印页面中的一部分内容,例如我只要打印数据,但按钮和背景不需要打印,这是由业务需求决定的,我们可以想象一下,如果一张打印出来的发票中出现一个按钮,你会怎么想,估计要昏过去的,呵呵~~

好了,说完需求,我来说说如何实现,一种方法是为屏幕显示和打印分别准备一个css文件,如下所示:

用于屏幕显示的css:
<linkrel="stylesheet"href="css/mainstylesheet.css"media="screen"/>

用于打印的css:

<linkrel="stylesheet"href="css/printstylesheet.css"media="print"/>

注意,这两个css是放在一个web页面里面的。

还有一种是import方式:
<styletype="text/css">
@importurl("css/printstylesheet.css")print;
</style>

最后一种写法是可以直接把屏幕显示样式和打印样式写在一个css文件中:
@mediaprint{}{
h1{
color
:black;
}

h2
{}{
color
:gray;
}

}

@media print里面的内容只对打印出来的内容有效,之外的内容就是屏幕显示的样式。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值