将xslt作为html的样式表的使用方法示例
将 XS LT 作为 HT ML 的样式表的使用方法示例
简介
当听到样式表这个词时,您可能会想到 CSS 样式表。XSLT 样式表通常用于 XML 转换,比如在 Web
服务之间映射数据。因为 XSLT 非常适合此用途,所以创建了顶层元素 的
别名,虽然这很少使用。这种 XSLT 转换的输入结构与输出结构有很大的不同。最重要的是,命名空间的
不同。
XSLT 样式表的输入结构与输出结构相似,但却更简单些。其中已经扩充了一些标记,但大部分
标记只是原样复制到输出。输入和输出的命名空间是相同的 (HTML)。输入文档也可以包含样式表指令(比
如创建脚注),这些指令属于另一个命名空间,不会传递到输出中。
常用缩略语
CSS:级联样式表
XHTML:可扩展超文本标记语言
XPath:XML 路径语言
XSLT:可扩展样式表语言转换
在本文中,我们将学习如何使用 XSLT 样式表扩充 XHTML 文档。文中的示例展示了如何使用
指令,如何引用其他源文档的部分,以及如何使用链接在主文档中导航。此外,我们还探索了页面的解释
和编译之间的区别。
CSS 样式表的局限性
XSLT 样式表不会阻止您使用其他技术,比如 JavaScript 或 CSS。CSS 适用于字体、加粗、
颜色、间距等。它不适合将来自不同位置的信息组合在一起,比如脚注、模块或生成一个目录。这正是 XSLT
的用武之地,它补充而不是替代了 CSS。
XSLT 用途示例
实际上,您可以将 XSLT 代码集中在一个文件中。为了简单起见,本文中的每个示例均位于一个
独立的 XSLT 文件中,除了一些必要的代码。清单 1 给出了必需的代码。
清单 1. 必需的代码 (位于 samples/common.xml 中)
XML/HTML Code
mpid "24"target "_blank"
href "/cpro/ui/uijs.php?adclass 0&app_id 0&c news&cf 1001&ch 0&di 128&fv
0&is_app 0&jk d14555d819ab7000&k xml&k0 xml&kdi0 0&luki 10&n 10&p baidu&qcp
r&rb 0&rs 1&seller_id 1&sid 70ab19d85545d1&ssp2 1&stid 0&t tpclicked3_hc&tu u1922429&u htt
p%3A%2F%2Fwww%2Eadmin10000%2Ecom%2Fdocument%2F1117%2Ehtml&urlid 0"
id "24_nwl">
style "color:#0000ff;font-size:14px;width:auto;height:auto;float:none;">xml
ns "http:///1999/xhtml"
xmlns:h "/1999/xhtml"
xmlns:a "/projects/arbalo/"
xmlns:s "/1999/XSL/Transform"
exclude-result-prefixes "a h"
version "1.0"
>
style "text-decoration:none;" mpid "25"target "_blank"
href "/cpro/ui/uijs.php?adclass 0&app_id 0&c news&cf 1001&ch 0&di 128&fv
0&is_app 0&jk d14555d819ab7000&k head&k0 head&kdi0 0&luki 9&n 10&p baidu&qc
pr&rb 0&rs 1&seller_id 1&sid 70ab19