[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伪元素生成内容.此特性目前已被大部 ...
随机推荐
- 基于Python3+Requests的贴吧签到助手
因为总是忘记签到,所以尝试写了一个签到脚本,因为使用的是Python3,所以没法使用Urllib2,于是选择了Requests,事实证明,Requests比Urllib2好用.整体思路比较简单,就是模 ...
- usa物价统计
国内 usa 折合人民币 战损 nike鞋 ...
- LeetCode 311. Sparse Matrix Multiplication
原题链接在这里:https://leetcode.com/problems/sparse-matrix-multiplication/description/ 题目: Given two sparse ...
- django 第四天模板渲染
今日内容 一.模板渲染 语法 {{ 变量 }} {% 逻辑 %} 1.变量 取列表中的第几个元素,用索引 <p>{{ namelist.2 }}</p> 取字典中的第几个元素用 ...
- 2019.10.25字符串——zr
题意: 给你两个字符串,由01组成:求他们两个的最短公共非子序列,要求字典序最小: 非公共子序列:都不是这两个字符串的子序列: 本人只会暴力啊,二进制枚举稳拿15分: 然而这道题其实是一个最短路题: ...
- linux服务器时间乱码问题解决
问题现象如下: [root@ip-171-21-36-129 testcase]# date 2019Ū 08Ղ 02ɕ чǚϥ 09:44:48 UTC 解决步骤: 1.执行命令:vi /etc/s ...
- [SCOI2005][BZOJ 1084]最大子矩阵
Description 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. Input 第一行为n,m,k(1≤n≤100,1≤m≤2 ...
- ICEM-八分之一球体
原视频下载链接:https://yunpan.cn/c6seunjgbwRhJ 访问密码 c780
- meshing-网格加密
原视频下载:http://yunpan.cn/cujvm8VbAPJZi 访问密码 0d3b
- 利用Wireshark抓取并分析OpenFlow协议报文
OpenFlow 交换机与控制器交互步骤 1. 利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网 ...