XML的三种显示方法

显示XML可以使用三种形式之一:关联CSS文件显示XML、使用XSL样式表和使用XML的数据岛技术。

1.关联CSS文件显示XML
XML文件内容(example1.xml):
<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="example1.css"?>
<Info>
Corsair ~~ Instantrice
</Info>
CSS文件内容(example1.css):
Info
{
font-size:48pt;
font-weight:bold;
}
P.S:需要注意的事情是CSS关联的时候是把相同类名的内容和样式相关联的,即两个文件中都出现的Info,CSS把类名为Info的样式赋予XML中的Info字段。

这样,当你再通过IE访问XML文件的时候,它就自动应用了CSS文件中的样式。

2.使用XSL样式表:
XML文件内容(example2.xml):
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="example2.xsl"?>
<persons>
<person>
  <name>Richard Choi</name>
  <id>Corsair ~~ Instantrice</id>
  <e-mail>instantrice@126.com</e-mail>
</person>
<person>
 <name>RR</name>
 <id>perfect luv</id>
 <e-mail>rrjlu@sina.com.cn</e-mail>
</person>
<person>
 <name>Scotte</name>
 <id>doesn't know</id>
 <e-mail>badboy@hotmail.com</e-mail>
</person>
</persons>
XSL文件内容(example2.xsl):
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
 <html>
  <body>
   <center>
    <table border="1">
     <tr>
       <td>name</td>
       <td>id</td>
       <td>e-mail</td>
     </tr>
    <xsl:for-each select="persons/person">
     <tr>
       <td><xsl:value-of select="name"/></td>
       <td><xsl:value-of select="id"/></td>
       <td><xsl:value-of select="e-mail"/></td>
     </tr>
    </xsl:for-each>
    </table>
  </center>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
这样一种类似HTML风格的格式就被应用到相应的数据上,实际上这种方法与1类似,是XML从文件指明CSS格式文件或者XSL文件,然后主动进行风格引入的一种模式。

3.XML的数据岛技术
XML的数据岛技术实际上就是在HTML引入XML数据或者XML文件的一种方法,对于XML是相对被动的方法。
直接在网页中嵌入XML数据的实例(example3.htm):
<html><head>
<meta http-equiv="Content-Type" content="text/html">
</head>
<body>
<xml id="example3">
<persons>
<person>
  <name>Richard Choi</name>
  <id>Corsair ~~ Instantrice</id>
  <e-mail>instantrice@126.com</e-mail>
</person>
<person>
 <name>Scotte</name>
 <id>doesn't know</id>
 <e-mail>badboy@hotmail.com</e-mail>
</person>
</persons>
</xml>
<center>
<table border="0" datasrc="#example3">
<thead>
<td>name</td>
<td>id</td>
<td>e-mail</td>
</thead>
<tr>
<td><span datafld="name"></span></td>
<td><span datafld="id"></span></td>
<td><span datafld="e-mail"></span></td>
</tr>
</table>
</body></html>
通过table的datasrc属性绑定XML数据,然后用span的datafld写出字段的内容,要注意的地方是绑定XML的时候datasrc指定的为XML的id,前面还有带一个#号。

另一种方法是在HTML文档中引入XML文档:
XML文档的内容(example4.xml):
<?xml version="1.0"?>
<persons>
<person>
  <name>Richard Choi</name>
  <id>Corsair ~~ Instantrice</id>
  <e-mail>instantrice@126.com</e-mail>
</person>
<person>
 <name>Scotte</name>
 <id>doesn't know</id>
 <e-mail>badboy@hotmail.com</e-mail>
</person>
</persons>
HTML文档的内容(example.xml):
<html><head>
<meta http-equiv="Content-Type" content="text/html">
</head>
<body>
<xml src="example4.xml" id="example4">
</xml>
<center>
<table border="0" datasrc="#example4">
<thead>
<td>name</td>
<td>id</td>
<td>e-mail</td>
</thead>
<tr>
<td><span datafld="name"></span></td>
<td><span datafld="id"></span></td>
<td><span datafld="e-mail"></span></td>
</tr>
</table>
</body></html>
这里实际就是在XML标识出通过src把文件名与XML的id做一个对应,下面Table引用的时候仍然是使用XML Id的方式进行引用,完成XML数据在HTML文档中的显示。


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值