HTML特殊字符显示

HTML特殊字符显示,第1张

有些字符在HTML里有特别的含义,比如小于号<就表示HTML Tag的开始,这个小于号是不显示在我们最终看到的网页里的。那如果我们希望在网页中显示一个小于号,该怎么办呢?

HTML字符实体(Character Entities)

这就要说到HTML字符实体(HTML Character Entities)了。

一个字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。

比如,要显示小于号,就可以写<或者<。

用实体(Entity)名字的.好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。

注意:Entity是区分大小写的。

如何显示空格

通常情况下,HTML会自动截去多余的空格。不管你加多少空格,都被看做一个空格。比如你在两个字之间加了10个空格,HTML会截去9个空格,只保留一个。为了在网页中增加空格,你可以使用 表示空格。

最常用的字符实体(Character Entities)

显示结果说明Entity NameEntity Number

显示一个空格

<小于<<

>大于>>

&&符号&&

"双引号""

其他常用的字符实体(Character Entities)

显示结果说明Entity NameEntity Number

?版权??

?注册商标??

×乘号××

&pide除号&pide&pide

在web应用中,经常会用到一些特殊字符,比如要显示这样的字符”“,在Html、word和java中单独展现这样的字符都非常的简单。但是当需要在这三种情况时同时输出特殊字符就出了问题,因为Java、html和word的处理方式是不一样的;这些字符在页面显示正常,在Java和导出word中就可能显示不正常,出现乱码;或者在Java或导出word中显示正常,在html中却是乱码;这对于需要同时满足页面展现、打印和导出到word的需求来说,就很棘手。

在润乾中灵活变通一下,将这种特殊字符做成一张图片,以图片的方式展现、打印和导出,就能很容易的解决这个应用问题。下面我们就以”“字符为例,看一下具体解决过程。

第一步:把特殊字符做成图片形式

第二步:制作报表

1 制作一张报表

2 建数据集,sql:SELECT类别名称,产品名称,产品销售额 FROM 各类销售额

3 单元格表达式:A1,B1,C1,D1合并单元格,输入:”各类产品统计表”;在A2,B2,C2,D2中分别输入:”类别名称”,”产品名称”,”产品销售额”,”备注”

A3,B3,C3的表达式分别为:=ds1.group(类别名称,false),= ds1.select(产品名称),= ds1.产品销售额;在D3中,单击右键,将单元格的数据类型设置成图片文件,内容中输入:if(C3 <5000, ‘taoda.png’,”);意思为产品销售额小于5000的显示这个”“字符,大于5000的不显示;将”taoda.png”图片放在报表文件夹下就可以了。

第三步:发布报表

在web页面中展现,预览效果:

现在展现、导出、打印都可以同时正常显示了。

总结:在web报表开发过程中,灵活运用各功能是很重要的,有些看似棘手的问题,改变下思路,就很容易解决了。

在处理XML数据时,特殊字符要特殊处理,不能和节点字符混淆。

所有 XML 文档中的文本均会被解析器解析。

只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。

PCDATA

PCDATA 指的是被解析的字符数据(Parsed Character Data)。

XML 解析器通常会解析 XML 文档中所有的文本。

当某个 XML 元素被解析时,其标签之间的文本也会被解析:

<message>此文本也会被解析</message>

解析器之所以这么做是因为 XML 元素可包含其他元素,就像这个例子中,其中的 <name>元素包含着另外的两个元素(first 和 last):

<name><first>Bill</first><last>Gates</last></name>

而解析器会把它分解为像这样的子元素:

<name>

<first>Bill</first>

<last>Gates</last>

</name>

转义字符

非法的 XML 字符必须被替换为实体引用(entity reference)。

假如您在 XML 文档中放置了一个类似 "<" 字符,那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不能这样写:

<message>if salary <1000 then</message>

为了避免此类错误,需要把字符 "<" 替换为实体引用,就像这样:

<message>if salary <1000 then</message>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7287741.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存