当前位置: 首页 > news >正文

使用jquery.PrintArea.js打印网页的样式问题

在使用jquery.PrintArea.js打印局部网页样式的时候,发现样式打印不出来,在网上找了好多资料,整理一下分享给大家

一、先看看css的引用文件方式

  1、直接在内部的元素中使用”style”属性来定义样式,比如:<div style=”width:800px;”></div>

  2、在<head>元素中使用”style”元素来指定

  3、使用<link>元素链接到外部的样式文件,比如:<link rel=”stylesheet” type=”text/css” href=”default.css”>

  这三种是比较常见的方式

二、第一种方式:

  直接在内部的元素中使用”style”属性来定义样式,然后调用printArea()函数,可打印全屏,可打印局部,样式都是起作用的,代码如下:

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>index</title>
</head>
<body>
<div>
<div id="printArea">
<div style="font-size:18px;color:#ff0000;">......文本打印区域......</div>
<div style="font-size:24px;color:#ff0000;">......文本打印区域......</div>
<div style="font-size:36px;color:#ff0000;">......文本打印区域......</div>
</div>
<br>
<br>
<input id="btnPrint" type="button" value="打印文本区域" />
<input id="btnPrintFull" type="button" value="全屏打印" />
</div>
<script>
$("#btnPrint").click(function () {
$("#printArea").printArea();
});
$("#btnPrintFull").click(function () {
$("body").printArea();
});
</script>
</body>

第二种方式:

在<head>元素中使用”style”元素来指定,你会发现打印局部网页预览的时候,样式并不起作用,在网上找到得资料是,在<style type="text/css" media="print"></style>

但是你会发现,这样做之后,样式并不起效,不知道是我用错了还是什么,贴上代码

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>index</title>
<style type="text/css" media="print">
.content{font-size:36px;color:#ff0000;}
</style>
</head>
<body>
<div>
<div id="printArea">
<div class="content">......文本打印区域......</div>
<div class="content">......文本打印区域......</div>
<div class="content">......文本打印区域......</div>
</div>
<br>
<br>
<input id="btnPrint" type="button" value="打印文本区域" />
<input id="btnPrintFull" type="button" value="全屏打印" />
</div>
<script>
$("#btnPrint").click(function () {
$("#printArea").printArea();
});
$("#btnPrintFull").click(function () {
$("body").printArea();
});
</script>
</body>

后来弄了好久,才摸索出了解决办法,直接贴上代码

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>index</title>
</head>
<body>
<div>
<div id="printArea">
<style type="text/css">
.content { font-size: 36px; color: #ff0000; }
</style>
<div class="content">......文本打印区域......</div>
<div class="content">......文本打印区域......</div>
<div class="content">......文本打印区域......</div>
</div>
<br>
<br>
<input id="btnPrint" type="button" value="打印文本区域" />
<input id="btnPrintFull" type="button" value="全屏打印" />
</div>
<script>
$("#btnPrint").click(function () {
$("#printArea").printArea();
});
$("#btnPrintFull").click(function () {
$("body").printArea();
});
</script>
</body>

  把你要打印那块区域的样式放到你要打印的那块区域里面,打印的时候样式就有效了,不需要加media="print"

第三种方式和第二种方式是一样的道理

 

转载于:https://www.cnblogs.com/t-man/p/6247924.html

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 2013年回顾,关于敏捷实践,关于j2ee等等
  • 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用
  • 读书笔记 --TCP :传输控制协议(一)
  • spring data mongo groupby实例
  • 缓冲器的学习
  • 理解 Linux shell 中的一个方言:21
  • HBase 数据读写流程
  • Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
  • powershell: 生成随机字符串
  • 使用httpClient上传至远程服务器
  • Kafka Offset Storage
  • jvm理论-运行时数据区
  • #if和#ifdef区别
  • Linux 虚拟地址与物理地址的映射关系分析【转】
  • nginx建https站实验
  • 2019.2.20 c++ 知识梳理
  • angular组件开发
  • classpath对获取配置文件的影响
  • django开发-定时任务的使用
  • Fundebug计费标准解释:事件数是如何定义的?
  • Linux gpio口使用方法
  • Python3爬取英雄联盟英雄皮肤大图
  • python学习笔记 - ThreadLocal
  • React-redux的原理以及使用
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • STAR法则
  • vue 个人积累(使用工具,组件)
  • Zsh 开发指南(第十四篇 文件读写)
  • 关于Java中分层中遇到的一些问题
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 如何利用MongoDB打造TOP榜小程序
  • 如何用vue打造一个移动端音乐播放器
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 使用SAX解析XML
  • 一道面试题引发的“血案”
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • #100天计划# 2013年9月29日
  • #Z0458. 树的中心2
  • $ git push -u origin master 推送到远程库出错
  • ${factoryList }后面有空格不影响
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (C语言)逆序输出字符串
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (pojstep1.1.2)2654(直叙式模拟)
  • (ros//EnvironmentVariables)ros环境变量
  • (代码示例)使用setTimeout来延迟加载JS脚本文件
  • (二)Linux——Linux常用指令
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (十五)使用Nexus创建Maven私服
  • (转载)深入super,看Python如何解决钻石继承难题
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .NET编程C#线程之旅:十种开启线程的方式以及各自使用场景和优缺点
  • [17]JAVAEE-HTTP协议