有时候需要将网页内容打印到纸上,最简单的一种方法是用window对象的print方法。

window.print()默认打印当前网页的所有部分。(除了背景,默认打印都是白底黑字,如果有特别的设置 要另外加样式。)那么由此衍生出了一些问题。有时候有一些元素,页面上有 但我们打印的时候是不需要的。比如点击打印的按钮、导航栏或者侧边栏什么的。我们可以在打印的时候将它们隐藏掉。这时候就需要在打印的时候创造专属的样式表。

1.先创建网页样式。不管是内联、外链样式,都需要加上

media="screen"

  注:如果不特别注明一下是用于网页的,这个样式会被当场通用样式,覆盖掉其他媒体设备的样式。也就是如果不加 media="screen"即使加了media=“print” 打印样式也不会生效。

现在我们可以分别给电脑屏幕和打印机两种媒体设备 写不同的样式了。

pc端的样式大致如下图

最上面是导航栏,中间是左右部分,下面是一段正文。最下面是打印按钮。pc端的样式代码如下

        <style media="screen">
.left{
float:left;
margin-top:40px;
border:1px solid red;
}
.right{
float: right;
margin-top:40px;
width: 300px;
height: 500px;
border:1px solid red;
}
#print{
background: #b3d4fc;
color: #ffff00;
border: none;
}
.nav{
background: #b3d4fc;
}
</style>

我们要打印的样式如下图,导航栏和按钮隐藏,左右块分别上下显示。

打印部分 我用的是外链样式。代码如下

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

打印样式表如下:

.nav{
display: none;
}
#print{
display: none;
}
div{
float:none;
border:1px solid red
}

基本样式问题就这样。

还有打印的分页问题以及这种打印的弊端,到下一篇再说。

就这样!

window.print()打印网页(一)的更多相关文章

  1. 使用window.print实现网页打印

    Window.print()方法用于在浏览器中打印当前窗口的内容,如果想要打印当前窗口中指定部分的内容的话需要其他的一些特殊的处理; Demo: <html> <head> & ...

  2. 用window.print()打印指定div里面的内容(转载的)

    用window.print()打印指定div里面的内容 今天客户让添加个打印证照功能,直接用window.print()打印的是整个页面,而用以下方法就可以只打印证明了 <!--window.p ...

  3. 用window.print()打印指定div里面的内容

    用window.print()打印指定div里面的内容 今天客户让添加个打印证照功能,直接用window.print()打印的是整个页面,而用以下方法就可以只打印证明了 <!--window.p ...

  4. window.print()打印页面指定内容(使用iframe保证原页面不失效)

    使用window.print()时会出现两个问题: (1)直接使用window.print() 打印的是整页内容-->无法实现打印指定区域 (2)打印时替换body中的内容,打印完成后再替换回来 ...

  5. 用window.print()打印如何去掉页眉和页脚

    用window.print()打印如何去掉页眉和页脚 2007-07-12 11:44:52|  分类: javascript 知识|举报|字号 订阅     <script language= ...

  6. window.print() 打印页面部分内容的方法

    用 JavaScript 实现页面数据的打印 : 主要是用到了一个 print() 函数 , 该函数将会打印整个 web 页面 body 内的所有 html 数据 ! 使用方法为 window.pri ...

  7. Web window.print() 打印

    web打印 window.print() 我只给出比较有效的,方便的打印方法,有些WEB打印是调用ActiveX控件的,这样就需要用户去修改自己IE浏览器的Internet选项里的安全里的Active ...

  8. window.print打印指定html元素中的内容

    通常有些时候我们项目过程中使用到打印功能,而wndow.print便是系统里提供的一个函数. 但是直接使用的话,它打印的将是整个页面的所有元素,而有些时候我们又只需要打印部分内容. <body& ...

  9. window.print打印方法实现

    vue中使用window.print打印效果 项目要求 打印每页有10行表格,如果接口数据没有十个显示10行 效果图 第一页 第二页 子组件 <template> <div> ...

随机推荐

  1. android 图片特效处理之 光晕效果

    这篇将讲到图片特效处理的图片光晕效果.跟前面一样是对像素点进行处理,本篇实现的思路可参见android图像处理系列之九--图片特效处理之二-模糊效果和android图像处理系列之十三--图片特效处理之 ...

  2. 44.Node.js Express 框架--web框架

    转自:http://www.runoob.com/nodejs/nodejs-express-framework.html Express 简介 Express 是一个简洁而灵活的 node.js W ...

  3. 最短路 spfa, dijkstra, Floyd

    spfa #include <stdio.h> #include <queue> using namespace std; #define RANGE 101 #define ...

  4. Vagrant 和 docker

    Docker应用实践 http://dockerone.com/article/146 Vagrant 适合用来管理虚拟机,而docker适合用来管理应用环境 http://www.linuxidc. ...

  5. maven项目引入sqljdbc4 找不到包的完美 解决方案

    今天碰到了这个问题,解决了,顺便做一下记录.首先来 重现 一下这个问题,maven install报错,说 找不到这个包,但是其实 我已经安装了. 我们 再来 看看 maven本地仓库里面有 什么,这 ...

  6. JS面向对象:

    面向对象:--JS系统对象也是基于原型的程序--不要修改或者添加系统对象下面的方法和属性eg: var arr = [1,2,3]; Array.prototype.push = function() ...

  7. Excel 打开两个单独的页面

    方法: 一.打开一个excel,二."开始-程序-Microsoft Office" 打开一个Microsoft Office,文件打开需要用的文件 三 结果如上图所示

  8. 今日SGU 5.10

    SGU 168 题意:从a矩阵求出b矩阵,规则直接看题目就行了,不好打字说明 收获:dp #include<bits/stdc++.h> #define de(x) cout<< ...

  9. gdb x查看二进制

    参考 http://blog.csdn.net/allenlinrui/article/details/5964046 (gdb) disassemble main Dump of assembler ...

  10. LeetCode 06 ZigZag Conversion

    https://leetcode.com/problems/zigzag-conversion/ 水题纯考细心 题目:依照Z字形来把一个字符串写成矩阵,然后逐行输出矩阵. O(n)能够处理掉 记i为行 ...