XSL是一種用來(lái)轉(zhuǎn)換XML文檔的樣式表,它包括結(jié)構(gòu)轉(zhuǎn)換(XSLT)和格式化輸出(XSL-FO)兩部分。在結(jié)構(gòu)轉(zhuǎn)換的過(guò)程中,XSL通過(guò)XPath來(lái)查找和定位XML文檔中的信息。XPath是一種專(zhuān)門(mén)用來(lái)在XML文檔中查找信息的語(yǔ)言,用來(lái)描述如何識(shí)別、選擇、匹配XML文檔中的各個(gè)元素。XML通過(guò)XSLT和XPath,可以把XML轉(zhuǎn)換成任何一種文檔,當(dāng)然也包括HTML文檔。
創(chuàng)新互聯(lián)是專(zhuān)業(yè)的兗州網(wǎng)站建設(shè)公司,兗州接單;提供網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行兗州網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
4. XSL的基本結(jié)構(gòu)
我們先來(lái)看一下例子來(lái)了解XSL的基本結(jié)構(gòu):
book.xml
?xml version="1.0" encoding="gb2312"?
?xml-stylesheet type="text/xsl" href="book.xsl"?
books
book
nameThe C++ Standard Library/name
authorNicolai M.Josuttis/author
/book
book
nameThe Mythical Man-Month/name
authorFrederick P Brooks Jr./author
/book
book
nameC# Design Pattern/name
authorJames W. Cooper/author
/book
/books
book.xsl
?xml version="1.0" encoding="gb2312"?
xsl:stylesheet xmlns:xsl=""
xsl:template match="/"
html
headtitleBook Store/title/head
body
h2 align="center"Book Store/h2
xsl:apply-templates select="books"/
/body
/html
/xsl:template
xsl:template match="books"
table border="1" cellpadding="0" align="center"
trthName/ththAuthor/th/tr
xsl:for-each select="book"
tr
tdxsl:value-of select="name"http://td
tdxsl:value-of select="author"http://td
/tr
/xsl:for-each
/table
/xsl:template
/xsl:stylesheet
分析上面的例子,可以看出XSL文件由以下幾部分組成:
· XSL文檔也是XML文檔,所以第一行要有XML聲明:
?xml version="1.0" encoding="gb2312"?
· 接下來(lái)是XSL聲明:
xsl:stylesheet xmlns:xsl=""
!--模板規(guī)則--
!--輸出模板--
/xsl:stylesheet
在XSL聲明中包含模板,模板中定義XML的輸出格式。
需要注意的幾個(gè)地方:
· XSL本身是XML文檔,注意標(biāo)簽的匹配。
· xsl:stylesheet既是XSL的聲明,也是根元素,要放在文件的首部。
· 要用xmlns指明XSL的命名空間:
xsl:stylesheet xmlns:xsl=""
· 樣式表中的所有模板都由xsl:template聲明,模板可以說(shuō)明處理的對(duì)象,處理方式或是轉(zhuǎn)換的結(jié)果。
在XML文檔中引入CSS樣式
在XML中引入CSS樣式表有兩種方法。一種是在XML文檔直接嵌入CSS樣式;另一種則是外部引入(似乎在WEB中很多引的方式都有這兩種)。
在IE瀏覽器中打開(kāi)XML文檔,可以看到,使用樣式表之后XML文檔中所有的標(biāo)記文字以及注釋內(nèi)容已不再顯示,各個(gè)元素所包含的數(shù)據(jù)將分別以樣式表中指定的格式顯示出來(lái)。
1、直接引入
?xml-stylesheet?type="text/css"?href="cssFile.css"?
2、內(nèi)嵌使用
?xml-stylesheet?type="text/css"?
xml
HTML:STYLE?xmlns:HTML=""
lang?{
background:#cccccc;
}
php?{
background:#eeeeee;
}
java?{
background:#999999;
}
lang
phplanguage?php?/php
javalanguage?java/java
/lang
/HTML:STYLE