[lodop]css样式after、before添加content内容之前和之后
css样式可以在内容之前和之后加内容。
格式是:
css类名:before{content:在之前加的内容}
css类名:after{content:在之后加的内容}
这种写法在LODOP里直接测试是不行的,所以建议用其他方法所代替,例如用JS,或字符串直接拼接。
content:attr(class);可以用类型,在JS中,可用:对象.className获取到类名。
测试代码:
<script language="javascript" src="LodopFuncs.js"></script>
<style id="style1">
.c1:after
{
content:attr(class);
}
.c1:before
{
content:"之前";
}
.c2{color:blue;}
</style>
</head>
<body>
<div id="div1">
<p class="c1" id="c1">这是p标签里的内容</p>
</div>
<div id="div2">
<p class="c2" id="c2">这是p标签里的内容</p>
</div>
<a href="javascript:prn1_preview()">content前后加内容</a><br>
<a href="javascript:prn2_preview()">innerHTML前后加内容</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
var strBodyStyle="<style>"+document.getElementById("style1").innerHTML+"</style>";
var strDivHtml=strBodyStyle+"<body>"+document.getElementById("div1").innerHTML+"</body>";
LODOP.ADD_PRINT_HTM(10,10,300,200,strDivHtml);
LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
var p=document.getElementById("c2");
console.log(p);
var strp=p.innerHTML;
console.log(strp);
var classP=p.className;
console.log(classP);
p.innerHTML="之前"+strp+classP;
LODOP.ADD_PRINT_HTM(10,10,300,200,document.getElementById("c2").innerHTML);
LODOP.PREVIEW();
};
</script>
</body>
图示:
用after、before和content给内容前后加上的,打印设计可以显示,预览出现问题。
用JS给前后内容加上的,预览正常。
(建议不用after,before和content给内容前后加内容,可以用JS或其他方式实现)

[lodop]css样式after、before添加content内容之前和之后的更多相关文章
- CSS样式表及选择器相关内容(二)-伪类与伪元素选择器
		伪类与伪元素选择器归纳: 一.伪类选择器(伪类以":"开头,用在选择器后,用于指明元素在某种特殊的状态下才能被选中) 1.a标签伪类选择器,其他标签类似 eg: ... 
- CSS样式表及选择器相关内容(一)
		CSS(Cascading Style Sheets)层叠样式表1.CSS级联-CSS层叠:规定在哪个HTML中使用哪个样式. body{ font-size:16px; //body默认字体大小 } ... 
- CSS样式逐li添加,执行完,清空,反复执行
		function change_light(el) { el.hide() let i = 0; function temp() { if (i > el.length - 1) { el.hi ... 
- Web前端开发最佳实践(8):还没有给CSS样式排序?其实你可以更专业一些
		前言 CSS样式排序是指按照一定的规则排列CSS样式属性的定义,排序并不会影响CSS样式的功能和性能,只是让代码看起来更加整洁.CSS代码的逻辑性并不强,一般的开发者写CSS样式也很随意,所以如果不借 ... 
- 实验四  CSS样式的应用
		实验四 CSS样式的应用 注意:以下实验项目皆以本文件为操作对象,实验结果用记事本保留后预览,最后将添加的CSS代码转载到实验报告中 另本网页中蓝色加下划线的字即为默认的超链接样式 实验目的: 掌握 ... 
- Emmet快速编写CSS样式
		基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin. 1.而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如: ... 
- html基础:css样式1
		h't'm'l中用到css样式有三种方式: 1.在header中增加style标签,在style标签中写 2.用link标签引用css样式文件 3.在需要使用css样式的标签添加style属性 一.在 ... 
- CSS content内容生成技术以及应用
		content属性早在CSS2.1的时候就被引入了,可以使用:before以及:after伪元素生成内容.此特性目前已被大部分的浏览器支持:(Firefox 1.5+, Safari 3.5+, IE ... 
- CSS content内容生成技术以及应用(转)
		一.哗啦哗啦的简介 zxx://这里“哗啦哗啦”的作用是为了渲染一种氛围.content属性早在 CSS2.1的时候就被引入了,可以使用:before以及:after伪元素生成内容.此特性目前已被大部 ... 
随机推荐
- 获取上一个页面的data
			let pages = getCurrentPages();// 获取页面栈 let current = pages[pages.length - 1]; // 当前页面 let url = curr ... 
- asp.net使用WebUploader做大文件的分块和断点续传
			HTML部分 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.a ... 
- WSAStartup() - 使用方法
			当一个应用程序调用WSAStartup函数时, 操作系统根据请求的Socket版本来搜索相应的Socket库,然后绑定找到的Socket库到该应用程序中. 以后应用程序就可以调用所请求的Socket库 ... 
- Bzoj 2875: [Noi2012]随机数生成器(矩阵乘法)
			2875: [Noi2012]随机数生成器 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 2052 Solved: 1118 Description ... 
- Uoj  #35. 后缀排序(后缀数组)
			35. 后缀排序 统计 描述 提交 自定义测试 这是一道模板题. 读入一个长度为 nn 的由小写英文字母组成的字符串,请把这个字符串的所有非空后缀按字典序从小到大排序,然后按顺序输出后缀的第一个字符在 ... 
- DIJ的优化,和spfa的优化
			SPFA和DIJ求最短路的算法的坑点一直是很多的.经常会让人搞不懂. 易错案例: 用重载运算符来排序,如: struct cmp { bool operator ()(int x, int y) co ... 
- 《挑战30天C++入门极限》类的分解,抽象类与纯虚函数的需要性
			类的分解,抽象类与纯虚函数的需要性 为了不模糊概念在这里我们就简单的阐述一下类的分解,前面的教程我们着重讲述了类的继承,继承的特点就是,派生类继承基类的特性,进行//站点:www.cndev- ... 
- Alpha(2/6)
			队名:無駄無駄 组长博客 作业博客 组员情况 张越洋 过去两天完成了哪些任务 任务分配.进度监督 提交记录(全组共用) 接下来的计划 沟通前后端成员,监督.提醒他们尽快完成各自的进度 还剩下哪些任务 ... 
- [洛谷 P4556] 雨天的尾巴
			传送门 Solution 线段树合并的入门题 lca可以在dfs的时候离线求(用并查集) 更新的点有每条链的两个端点,它们的lca和dad[lca] 为了节省空间,lca和dad[lca]的更新可以先 ... 
- CF1188B/E Count Pairs(数学)
			数同余的个数显然是要把\(i,j\)分别放到\(\equiv\)的两边 $ (a_i + a_j)(a_i^2 + a_j^2) \equiv k \bmod p $ 左右两边乘上\((a_i-a_j ... 
