在项目中,有一个需求时是需要打印产品页面。但是打印出来的版本和网页上的版本不太一致,有些图片不需要,网页上以tab选项卡显示的内容,都需要在打印页面中看到..等等

CSS针对这种需求,引入了一个@media 规则,@media规则允许你根据不同的media指定不同的css style.  @media print 指的就是print version的css样式

@media screen   //screen的样式
{
p.bodyCss {font-family: arial;}
} @media print //print的样式
{
p.bodyCss {font-family: serif;} } @media screen, print
{
p.bodyCss {font-size: 15pt}
}

在上面的例子中,对于p的bodyCss样式, 页面上(screen样式)呈现的和打印出来的(print样式)是不一样的字体,但是字体大小是一样的

你也可以专门为打印print样式,引用一个专门的外部样式

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

也可以使用在页面中直接包含css的形式

<style type="text/css" media="print">
.noprint {display = none}
</style> 网页上打印时不需要显示的部分加上 class="noprint"

有时,需要在打印的页面上,显示网页上折叠隐藏的内容,将内容完整的展示在纸上

<style type="text/css" media="print">
.print-show {display = block;}
</style>

设置好需要打印内容的css后,我们一般会在页面上增加一个button,button上面的内容为"Print this Page". 当点击这个button时,会打印这个页面。这个是通过javascript来实现的

<script type="text/javascript">

   function printpage()
{ window.print(); } </script>

有的时候,一个网页内容非常丰富, 有整个网站共享的layout,包括该网页中的头部,底部。而我们只需要打印这个网页中间的内容,这种时候我们可以通过JavaScript来实现

假定网页中间的内容,我们用一个div来包裹,这个div的Id为printDiv, 那么写一个JavaScript函数如下

<script type="text/javascript">

function printversion()
{ document.body.innerHTML = document.getElementById("printDiv").innerHTML;
window.print();
history.go(); } </script>

C# 开发网页的打印版的更多相关文章

  1. 阿里巴巴Java开发手册(详尽版)-个人未注意到的知识点(转)

    转自 https://blog.csdn.net/u013039395/article/details/86528164 一.编程规约 (一) 命名风格 [强制]代码中的命名只可用英文方式 [强制]类 ...

  2. Java和WebSocket开发网页聊天室

    小编心语:咳咳咳,今天又是聊天室,到现在为止小编已经分享了不下两个了,这一次跟之前的又不大相同,这一次是网页聊天室,具体怎么着,还请各位看官往下看~ Java和WebSocket开发网页聊天室 一.项 ...

  3. 微信开放平台开发——网页微信扫码登录(OAuth2.0)

    1.OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用. 允许用户提供 ...

  4. 网页WEB打印控件

    网页WEB打印控件制作 在WEB系统中,打印的确是比较烦人的问题,如果我们能制作一个属于自己的自定义的打印插件,那么我们在后续自定义打印的时候能随心所欲的控制打印,这样的效果对于程序员来说是非常开心的 ...

  5. 微信小程序(原名微信应用号)开发工具0.9版安装教程

    微信小程序全称微信公众平台·小程序,原名微信公众平台·应用号(简称微信应用号) 声明 微信小程序开发工具类似于一个轻量级的IDE集成开发环境,目前仅开放给了少部分受微信官方邀请的人士(据说仅200个名 ...

  6. 《阿里巴巴Java开发手册(正式版》读记

    前几天,阿里巴巴发布了<阿里巴巴Java开发手册(正式版>,第一时间下载阅读了一番. 不同于一般大厂内部的代码规范,阿里巴巴的这本Java开发手册,可谓包罗万象,几乎日常Java开发中方方 ...

  7. 【转】Android 开发规范(完结版)

    摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规范 7 第三方库规范 8 注释规范 9 测试规范 10 其他的一些规范 1 前言 为了有利于项目维护.增 ...

  8. Python十分适合用来开发网页爬虫

    Python十分适合用来开发网页爬虫,理由如下:1.抓取网页自身的接口比较与其他静态编程语言,如java,c#,c++,python抓取网页文档的接口更简练:比较其他动态脚本语言,如perl,shel ...

  9. 《FPGA设计技巧与案例开发详解-第二版》全套资料包

    本人参与写的一本书(TimeQuest一章由我所写),希望大家多多支持: 全书配套资料上传各大网盘资料中附送大量源码,你值得拥有--<FPGA设计技巧与案例开发详解-第二版>全套资料包-V ...

随机推荐

  1. htmlParser的使用-链接

    基于htmlparser实现网页内容解析:http://www.cnblogs.com/coding-hundredOfYears/archive/2012/12/15/2819217.html ht ...

  2. mysql备份,知识点

    1.mysql错误日志 show variables like '%log_error%'; my.cnf中log-error=/tmp/SZDB.err 开启 tail -f 错误日志  观察mys ...

  3. EntityFramework 学习 一 Local Data

    DBSet的Local属性提供简单的从context上下文获取当前已经被跟踪的实体(实体不能被标记为Deleted状态) using System.Data.Entity; class Program ...

  4. python第七篇:Python 列表操作详解

    Python列表操作详解 list函数 list()   #生成一个空的列表 list(iterable)  #用可迭代对象初始化一个列表 列表的 and 运算和 or 运算 列表and运算 > ...

  5. vim乱码的解决

    解决vim文件乱码,打开文件乱码,菜单,提示信息乱码: 有四个跟字符编码方式有关的选项,encoding.fileencoding.fileencodings.termencoding 在linux中 ...

  6. 处理json的工具类({本类为处理json的工具类})

    <jackson.version>2.2.3</jackson.version> <!-- json --> <dependency> <grou ...

  7. SSH三大框架的搭建整合(struts2+spring+hibernate)(转)

    原文地址:http://blog.csdn.net/kyle0349/article/details/51751913  尊重原创,请访问原文地址 SSH说的上是javaweb经典框架,不能说100% ...

  8. c++的静态变量与静态函数

    参考文献:静态成员函数和静态成员 一.静态变量: 1.静态变量属于类的变量,为类共享,在编译期间就分配好了内存. 2.静态变量在头文件中声明(和全局变量一样不要在头文件中定义静态变量),在.cpp文件 ...

  9. python字符串相关操作

    字符串搜索相关搜索指定字符串,没有返回-1:str.find('t')指定起始位置搜索:str.find('t',start)指定起始及结束位置搜索:str.find('t',start,end)从右 ...

  10. type_traits.h

    type_traits.h // Filename: type_traits.h // Comment By: 凝霜 // E-mail: mdl2009@vip.qq.com // Blog: ht ...