导读:上篇博客中以具体实例分析了HTML和XML在语义上的不同,但是,大家也都发现,XML表现出来的,并没有HTML那样直观或者说美观。其原因是因为XML的表现内容和表现形式被分离。它的表现形式有两种方法可以确定:XSL、CSS。本篇博客,介绍XSL。

一、再现文档

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8" ?>
<booklibrary>
<book>
<title> 数字图像处理学 </title>
<author> 陈秋琦 </author>
<publisher> 电子工业出版社 </publisher>
<price moneytype="RMB"> 49.00 </price>
</book> <book>
<title> C++Builder开发技术 </title>
<author> 李东 </author>
<author> 王宏 </author>
<publisher> 水利水电出版社 </publisher>
<price moneytype="RMB">40.00</price>
</book> <book>
<title> VC++编程技术 </title>
<author> 高强 </author>
<publisher> 人民邮电出版社 </publisher>
<price moneytype="RMB"> 35.00 </price>
</book> </booklibrary></span>

二、编写XSL

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<BODY>
<H2 ALIGN="center">图书信息列表<HR></HR></H2>
<TABLE COLSPAN="8" CELLPADDING="5" BORDER="0">
<TR>
<TD ALIGN="middle" WIDTH="150" BGCOLOR="#4682b4">
<FONT COLOR ="#ffffff" SIZE="2" FACE="黑体">书名</FONT>
</TD>
<TD ALIGN="middle" WIDTH="800" BGCOLOR="#4682b4">
<FONT COLOR ="#ffffff" SIZE="2" FACE="黑体">作者</FONT>
</TD>
<TD ALIGN="middle" WIDTH="150" BGCOLOR="#4682b4">
<FONT COLOR ="#ffffff" SIZE="2" FACE="黑体">出版社</FONT>
</TD>
<TD ALIGN="middle" WIDTH="50" BGCOLOR="#4682b4">
<FONT COLOR ="#ffffff" SIZE="2" FACE="黑体">价格</FONT>
</TD>
</TR>
<xsl:for-each select="booklibrary/book">
<TR>
<TD BGCOLOR="#f7efde" ALIGN="middle">
<FONT SIZE="2"><xsl:value-of select="title"/></FONT>
</TD>
<TD BGCOLOR="#f7efde" ALIGN="middle">
<FONT SIZE="2"><xsl:value-of select="author"/></FONT>
</TD>
<TD BGCOLOR="#f7efde" ALIGN="middle">
<FONT SIZE="2"><xsl:value-of select="publisher"/></FONT>
</TD>
<TD BGCOLOR="#f7efde" ALIGN="middle">
<FONT SIZE="2"><xsl:value-of select="price"/></FONT>
</TD>
</TR>
</xsl:for-each>
</TABLE>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet></span>

三、实现样式

将编写好的XSL文档,添加到XML文档中。位置:在第一句话下面。

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8" ?>
<?xml:stylesheet type="text/xsl" href="BOOK.XSL"?>
<booklibrary></span>

效果:

四、总结

现在已经实现用XSL给XML文档添加样式了,接下来会介绍XML的文档组成,还有XML的变量、类型定义等。下篇博客介绍XML的文档组成结构,嘿嘿。

【HTML/XML 5】使用XSL给XML文档添加样式的更多相关文章

  1. 突发奇想之:源码及文档,文档包括源码---xml格式的源码,文档源码合并;注释文档化,文档代码化;

    目前源码和文档一般都是分开的,我在想为什么 源码不就是最好的文档么? 但是一般源码都是文本text的,格式化需要人为统一规范,所以源码中的文档在现实中不是那么的易于实践. 而且 源码 不能包括图片.附 ...

  2. Xml学习笔记(3)利用递归解析Xml文档添加到TreeView中

    利用递归解析Xml文档添加到TreeView中 private void Form1_Load(object sender, EventArgs e) { XmlDocument doc = new ...

  3. xml基础之二(XML结构【2】)DTD文档模版

    xml基础之二(XML结构[2])DTD文档模版 xml 模板 文档结构  我们知道XML主要用于数据的存储和传输,所以无论是自定义还是外部引用DTD模板文档,都是为了突出数据的存储规范.DTD(文档 ...

  4. 容器环境下如何将NuGet包XML文档添加到Swagger

    容器环境下将NuGet包XML文档添加到Swagger 在.NET Core项目开发过程中,为了实现代码复用,我们将可以重复使用的部分拆分成一个个小的NuGet包.这些NuGet包可以在其他系统中复用 ...

  5. 向Docx4j生成的word文档添加图片和布局--第一部分

    原文标题:Adding images and layout to your Docx4j-generated word documents, part 1 原文链接:http://blog.iprof ...

  6. Java 如何给Word文档添加多行文字水印

    前言 我在以往的文章中曾介绍过如何给Word文档添加文本水印和图片水印,及怎样删除文档中的水印.关于文本水印,之前那篇教程里主要指的是单行字体的水印,而在操作Word文档时,有时也会碰到需要添加多行文 ...

  7. C#给PDF文档添加文本和图片页眉

    页眉常用于显示文档的附加信息,我们可以在页眉中插入文本或者图形,例如,页码.日期.公司徽标.文档标题.文件名或作者名等等.那么我们如何以编程的方式添加页眉呢?今天,这篇文章向大家分享如何使用了免费组件 ...

  8. C# 给Word文档添加内容控件

    C# 给Word文档添加内容控件 在MS Word中,我们可以通过内容控件来向word文档中插入预先定义好的模块,指定模块的内容格式(如图片.日期.列表或格式化的文本等),从而创建一个结构化的word ...

  9. OpenXml入门----给Word文档添加文字

    使用OpenXml给word文档添加文字,每个模块都有自己对于的属性以及内容,要设置样式就先声明属性对象,将样式Append到属性里面,再将属性append到模块里面,那么模块里面的内容就具备该样式了 ...

随机推荐

  1. 在线编译器Coding Ground

    http://www.tutorialspoint.com/codingground.htm Free Online IDE and Terminal - Edit, Compile, Execute ...

  2. CG Shader常用函数

    为了方便自己记忆,将常用的CG函数写于此 转载于 http://www.cppblog.com/lai3d/archive/2008/10/23/64889.html Name Syntax Desc ...

  3. 洛谷P3254 圆桌问题(最大流)

    题意 $m$个不同单位代表参加会议,第$i$个单位有$r_i$个人 $n$张餐桌,第$i$张可容纳$c_i$个代表就餐 同一个单位的代表需要在不同的餐桌就餐 问是否可行,要求输出方案 Sol 比较zz ...

  4. 列表、margin和padding的探讨、标签的分类

    一.列表 列表分为无序列表.有序列表和自定义列表 1.无序列表   <ul></ul> 1).内部必须有子标签,<li></li> 2).ul天生自带内 ...

  5. 新建cordova应用,插件开发教程系列(总目录)

    以下几篇是连续的教程,代码也是连续的,包括如下章节: 新建cordova应用 https://www.cnblogs.com/cannel/p/11074359.html 使用cordova把h5应用 ...

  6. 教你如何配置WampServer

    httpdconfig 搜索deny 268行 Deny 换成Allow 在本机cmd 搜索 ipconfig 找到 本机的ip 地址 239 行 DocumentRoot "e:/mywe ...

  7. 【Jenkins】Jenkins配置从节点,实现远程主机调用功能

    一.需求 使用Jenkins进行持续集成部署过程中,需要用到远端主机的处理功能.如部署到远程主机.文件备份等功能 二.思路 1.当远端主机为Linux系统时使用Publish Over SSH Plu ...

  8. js中传统事件绑定模拟现代事件处理

    大家都知道,IE中的现代事件绑定(attachEvent)与W3C标准的(addEventListener)相比存在很多问题, 例如:内存泄漏,重复添加事件并触发的时候是倒叙执行等. 下面是用传统事件 ...

  9. 初用emmet

    下载emmet的pspad插件emmet.js.复制到pspad目录下的 script\JScript 文件夹. 输入 ul#nav>li.item$*4>{Item $} 但是没反应. ...

  10. python+selenium(python基础)

    1.编辑器的选择 好刀不误砍柴工,那么我们写代码也需要一个利器,虽然python自带有python shell ,但我们在执行代码的时候,需要开很多窗口,最重要的一点是,代码文件的管理很不方便,笔者推 ...