【HTML/XML 11】XML和HTML的混合使用
导读:在前面介绍了很多关于XML和HTML的东西,他们其实各有各的好处,在很多时候都需要结合起来使用。现在已经有XML和HTML结合的产物:XHTML(可扩展超文本标记语言)。在本篇博客中,则主要介绍通过引入命名空间的方法,进行XML和HTML混合使用的例子。
一、在XML中使用HTML
1.1,代码
<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css"?>
<!--HTML命名空间声明-->
<body xmlns:html="http://www.w3.org/TR/RCE-html40">
<html:h2 align="center">Angel测试XML中的HTML<html:hr></html:hr></html:h2>
<content>
<h1 align="center">XML中的h1标签</h1>
<html:h1 align="center">HTML中的h1标签</html:h1>
</content>
</body></span>
1.2,说明
在<body xmlns:html="http://www.w3.org/TR/RCE-html40">中,引入了HTML的命名空间,所以在XML文档中,通过增加前缀HTML,就可以使用HTML的标签和语法。如果,没有这句话,则会出现下面的结果:
二、在HTML中使用XML
2.1,代码
<span style="font-family:KaiTi_GB2312;font-size:18px;"><!--XML命名空间声明-->
<html xmlns:test>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>测试HTML中的XML</title>
<body>
<h1 align="center">测试HTML中XML使用</h1>
<hr></hr>
<test:text style="display:block;position:relative;font-size:30;color:red;">这是XML标签的内容</test:text>
</body>
</head></span>
2.2,说明
在<html xmlns:test>中,引入了xml的命名空间test,在代码中使用<test:text><./test:text>,而不是<text><./text>,是在告诉浏览器test并不是HTML的标记,是一个自定义的标记,所以浏览器会根据style属性设置的样式来显示text标记中定义的内容。如果没有前缀,那么浏览器会根据默认的格式来显示它,因为<text><./text>并不属于HTML标记。
没有前缀的效果:
三、扩展:数据岛
在HTML文档中使用<XML></XML>标记来嵌入xml数据时,就在HTML文档中形成了一个XML数据岛(data island)。数据岛是指存在于HTML页面中的xml代码。数据岛允许在HTML页面中集成XML,对于XML编写脚本,不需要通过脚本或<OBJECT>标签读取XML。几乎所有能够存在于一个结构完整的XML文档中的数据都能存在于一个数据岛中,包括处理指示、DOCTYPE声明和内部子集。
使用数据岛最为方便的方法是将XML数据保存为单独的XML文档,然后用<xml src="XML文档名称">。注意:编码串不能放在数据岛中。
四、总结
XML和HTML文档的混合使用,都是在各自的文档中引入对方的命名空间,从而进行操作。这就和做系统时的命名空间是一样的,当我们引入了一个命名空间后,就可以调用里面的方法。后续会接着深入的学习Schema文件和XPath语言等,有所收获的时候,会接着总结。接下来会了解一下XHTML,以及URI、URN、URL等基本知识点。
【HTML/XML 11】XML和HTML的混合使用的更多相关文章
- 报错:Unable to load configuration. - action - file:/E:/apache-tomcat-8.0.37/webapps/20161102-struts2-3/WEB-INF/classes/struts.xml:11:73
第一种报错: 严重: Exception starting filter struts2Unable to load configuration. - action - file:/E:/apache ...
- Unable to load configuration. - action - file:/F:/apache-tomcat-8.0.30/webapps/test1Struts2/WEB-INF/classes/struts.xml:11:71
Unable to load configuration. - action - file:/F:/apache-tomcat-8.0.30/webapps/test1Struts2/WEB-INF/ ...
- Linq to XML 读取XML 备忘笔记
本文转载:http://www.cnblogs.com/infozero/archive/2010/07/13/1776383.html Linq to XML 读取XML 备忘笔记 最近一个项目中有 ...
- XML.ObjTree -- XML source code from/to JavaScript object like E4X
转载于:http://www.kawa.net/works/js/xml/objtree-try-e.html // ========================================= ...
- Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 1 -使用FOR XML返回XML结果集
XML 介绍 <CustomersOrders> <Customer custid="1" companyname="Customer NRZBB&qu ...
- File Templates for web.xml & web-fragment.xml (Servlet 2.3, 2.4, 2.5 + 3.0)
As I sometimes need these, I have compiled a list of the valid headers of the web.xml and web-fragme ...
- hadoop三个配置文件的参数含义说明core-site.xml,hdfs-site.xml,mapred-site.xml
配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,默认下来,这些配置文件都是空的,所以很难知道这些配置文件有哪些配置可以生 ...
- Spring基础——配置文件pom.xml,web.xml,ApplicationContext.xml
Spring配置文件——复制粘贴即用 为了以后兼容SSM框架,直接创建Maven Project,包结构如下图. pom.xml <project xmlns="http://mave ...
- XML和XML解析
1. XML文件: 什么是XML?XML一般是指可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. 2.XML文件的优点: 1)XML文档内容和结构完全分离. 2 ...
随机推荐
- Topology的构建
public class BlackListBolt extends BaseRichBolt{ private static Logger logger = Logger.getLogger(Bla ...
- php 消息队列
本消息队列用于linux下,进程通信 #根据路径和后缀创建一个id $key = ftok(__DIR__, 'R'); #获取队列中的消息 $q = msg_get_queue($key); #删除 ...
- 转-Activity之间数据传递之Intent数据传递
Intent意图 可用于Activity之间的数据传递,一般可分为下面两种情况,从当前Activity传递到目标Activity后有无返回值: 1.传递后无返回值的情况: 1 2 3 4 5 6 7 ...
- Axis2/c 知识点
官网文档: http://axis.apache.org/axis2/c/core/docs/axis2c_manual.html 从文档中可以总结出: 1. Axis2/C是一个用C语言实现的We ...
- 跨浏览器复制神器 ZeroClipboard 2.x快速入门详解
有些时候,我们希望让用户在网页上完成某个操作就能自动将指定的内容复制到用户计算机的剪贴板中.但是出于安全原因,大多数现代浏览器都未提供通用的剪贴板复制接口(或即便有,也默认被禁用).只有IE浏览器可以 ...
- Bugtags,产品经理的瑞士军刀
做为设计移动应用的产品经理,每天的主要工作就是在手机上不停的体验自己的产品,发现问题.优化体验.你是否经常工作在这样的尴尬场景: 发现界面问题,将问题界面截屏传到电脑,用图片标记工具将问题标记出来,然 ...
- mysqldump 数据库迁移并改换engine
1. 导出数据库 mysqldump -h172.18.165.xxx -P3306 -uroot -pxxx --add-drop-database --default-character-set= ...
- Haproxy安装及配置(转)
1.安装 # wget http://haproxy.1wt.eu/download/1.3/src/haproxy-1.3.20.tar.gz # tar zcvf haproxy-1.3.20.t ...
- QT中QWidget、QDialog QMainWindow
继承关系:在Qt中所有的类都有一个共同的基类QObject ,QWidget直接继承与QPaintDevice类,QDialog.QMainWindow.QFrame直接继承QWidget 类. QW ...
- rsyncd.conf 文件
uid = nobodygid = nobodymax connections = 10timeout = 60use chroot = noread only = falsepid file=/va ...