簡介
當(dāng)聽到樣式表這個(gè)詞時(shí),您可能會想到 CSS 樣式表。XSLT 樣式表通常用于 XML 轉(zhuǎn)換,比如在 Web 服務(wù)之間映射數(shù)據(jù)。因?yàn)?XSLT 非常適合此用途,所以創(chuàng)建了頂層元素 <stylesheet> 的 <xsl:transform> 別名,雖然這很少使用。這種 XSLT 轉(zhuǎn)換的輸入結(jié)構(gòu)與輸出結(jié)構(gòu)有很大的不同。最重要的是,命名空間的不同。
XSLT 樣式表的輸入結(jié)構(gòu)與輸出結(jié)構(gòu)相似,但卻更簡單些。其中已經(jīng)擴(kuò)充了一些標(biāo)記,但大部分標(biāo)記只是原樣復(fù)制到輸出。輸入和輸出的命名空間是相同的 (HTML)。輸入文檔也可以包含樣式表指令(比如創(chuàng)建腳注),這些指令屬于另一個(gè)命名空間,不會傳遞到輸出中。
常用縮略語
CSS:級聯(lián)樣式表
XHTML:可擴(kuò)展超文本標(biāo)記語言
XPath:XML 路徑語言
XSLT:可擴(kuò)展樣式表語言轉(zhuǎn)換
在本文中,我們將學(xué)習(xí)如何使用 XSLT 樣式表擴(kuò)充 XHTML 文檔。文中的示例展示了如何使用指令,如何引用其他源文檔的部分,以及如何使用鏈接在主文檔中導(dǎo)航。此外,我們還探索了頁面的解釋和編譯之間的區(qū)別。
CSS 樣式表的局限性
XSLT 樣式表不會阻止您使用其他技術(shù),比如 JavaScript 或 CSS。CSS 適用于字體、加粗、顏色、間距等。它不適合將來自不同位置的信息組合在一起,比如腳注、模塊或生成一個(gè)目錄。這正是 XSLT 的用武之地,它補(bǔ)充而不是替代了 CSS。
XSLT 用途示例
實(shí)際上,您可以將 XSLT 代碼集中在一個(gè)文件中。為了簡單起見,本文中的每個(gè)示例均位于一個(gè)獨(dú)立的 XSLT 文件中,除了一些必要的代碼。清單 1 給出了必需的代碼。
清單 1. 必需的代碼(位于 samples/common.xml 中)
新聞熱點(diǎn)
疑難解答
圖片精選