日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

XSL簡明教程

瀏覽:414日期:2022-06-03 14:56:13

一. XSL入門

1.XSL---XML的樣式表

HTML網頁使用預先確定的標識(tags),這就是說所有的標記都有明確的含義,例如<p>是另起一行<h1>是標題字體。所有的瀏覽器都知道如何解析和顯示HTML網頁。
然而,XML沒有固定的標識,我們可以建立我們自己需要的標識,所以瀏覽器不能自動解析它們,例如<table>可以理解為表格,也可以理解為桌子。由于XML的可擴展性,使我們沒有一個標準的辦法來顯示XML文檔。
為了控制XML文檔的顯示,我們有必要建立一種機制,CSS就是其中的一種,但是XSL(eXtensible Stylesheet Language)是顯示XML文檔的首選樣式語言,它比CSS更適合于XML。

2.XSL --- 不僅僅是一種樣式表

XSL由兩部分組成:

一是轉化XML文檔;二是格式化XML文檔。

如果你不理解這個意思,可以這樣想:XSL是一種可以將XML轉化成HTML的語言,一種可以過濾和選擇XML數據的語言,一種能夠格式化XML數據的語言。(比如用紅色顯示負數。)

3.XSL --- 它能做什么?

XSL可以被用來定義XML文檔如何顯示,可以將XML文檔轉換成能被瀏覽器識別的HTML文件,通常的,XSL是通過將每一個XML元素"翻譯"為HTML元素,來實現這種轉換的。

XSL能夠向輸出文件里添加新的元素,或則移動元素。XSL也能夠重新排列或者索引數據,它可以檢測并決定哪些元素被顯示,顯示多少。

4.XSL在IE5中的顯示

注意:IE5.0中,并不能完全兼容W3C組織發布的最新XSL標準。因為IE5.0是在XSL標準最終確定以前發布的。微軟已經承諾在IE5.5中修正。 二.XSL的轉換
  1.將XML轉換成HTML

XSL是如何將XML文檔轉換成HTML文件的呢?我們來看一個例子,下面是XML文檔的一部分: <?xml version="1.0" encoding="ISO8859-1" ?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
... 然后我們將下面的XSL文件作為HTML的模板將XML數據轉換為HTML文件: <?xml version=""1.0""?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<body>
<table border="2" bgcolor="yellow">
<tr>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="CATALOG/CD">
<tr>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="ARTIST"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
  在上面的代碼中, xsl:for-each元素的作用是定位XML文檔中的哪些元素需要按以下模板顯示。select屬性用來定義源文件中的元素名。指定屬性的這種語法又稱為XML
Pattern(模式),類似文件子目錄的表示形式。xsl:value-of元素用來在當前層次中插入子元素的內容模板。

因為XSL樣式表自身也是一個XML文檔,因此,XSL文件的開頭以一個XML聲明開始。 xsl:stylesheet元素用來聲明這是一個樣式表文件。<xsl:template
match="/">語句表示XML的源文檔在當前目錄下。

如果為XML文檔加上XSL樣式表,看下面代碼第2行,你的瀏覽器就可以精確的將XML 文檔轉換為HTML文件。 <?xml version="1.0" encoding="ISO8859-1" ?>
<?xml-stylesheet type="text/xsl" href="cd_catalog.xsl"?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD> 三. XSL--在客戶端的實現
  1.JavaScript解決方案

在上面的章節中我們已經解釋了XSL是如何將XML轉換成HTML文件。方法就是在XML文檔的頭部加入一個XSL樣式表信息,然后讓瀏覽器執行轉換過程。

這種方法在大部分情況下都做得很好,但是在不支持XML的瀏覽器中就無法正確顯示了。

一個更好的更全面的解決方案是使用Javascript來實現XML到HTML的轉換。但是使用JavaScript必須得到以下功能支持:

a.允許Javascript代替瀏覽器進行細節檢測;

b.根據不同的需要和不同的瀏覽器使用不同的樣式表。

對于XSL來說這是完全可行的。設計XSL的目標之一就是允許將一種格式轉換成另一種格式,支持不同的瀏覽器,支持不同的用戶需求。未來的瀏覽器的重要任務就是在客戶端執行XSL的轉換工作。

2.一個具體的實例

下面是我們上面提到的一個XML文檔(cd_catalog.xml)例子的部分代碼:

<?xml version="1.0" encoding="ISO8859-1" ?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
.
.
.

下面是完整的XSL文件(cd_catalog.xsl): <?xml version=""1.0""?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<body>
<table border="2" bgcolor="yellow">
<tr>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="CATALOG/CD">
<tr>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="ARTIST"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
  注意,現在XML文件還沒有加入XSL樣式表,還沒有被轉換成HTML文件。

下面是用JavaSript來實現最后轉換的HTML代碼: <html>
<body>
<script language="javascript">
// Load XML
var xml = new ActiveXObject("Microsoft.XMLDOM")
xml.async = false
xml.load("cd_catalog.xml")
// Load the XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load("cd_catalog.xsl")
// Transform
document.write(xml.transformNode(xsl))
</script>
</body>
</html>
  上面代碼中使用了Javascript,如果你不知道如何寫JavaScript,您最好專門學習一下。

第一段代碼建立一個Microsoft Parser(XMLDOM)解析的對象,并將XML文檔讀入內存;第二段代碼建立另外一個對象并導入XSL文檔;最后一行代碼將XML文檔用XSL文檔轉換,并將結果輸出到HTML文件中。
標簽: XML/RSS
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美一区久久久| 麻豆国产欧美日韩综合精品二区| 久久精品系列| jizzjizz中国精品麻豆| 激情国产在线| 久久久精品午夜少妇| 欧美影院三区| 99国产精品99久久久久久粉嫩| 亚洲欧美日本视频在线观看| 免费在线观看精品| 97se亚洲| 精品久久在线| 久久精品青草| 一区二区精品| 国产精品久久久久久久久免费高清 | 日韩欧美高清一区二区三区| 欧美片第1页综合| 精品72久久久久中文字幕| 久久精品免费一区二区三区 | 三上亚洲一区二区| 午夜精品一区二区三区国产| 中文字幕一区二区av| 国产精品久久久久久久免费软件| 日韩电影二区| 午夜久久av | 激情欧美丁香| 欧美日韩免费观看视频| 免费一级片91| 久久婷婷国产| 一本一本久久| 美女视频黄 久久| 婷婷久久一区| 国产亚洲欧美日韩精品一区二区三区| 亚洲综合电影| 中文字幕av亚洲精品一部二部| 久久99蜜桃| 午夜久久黄色| 欧美极品中文字幕| 九一精品国产| 美女国产一区二区三区| 欧美va天堂在线| 欧美在线精品一区| 国产91久久精品一区二区| 青青草视频一区| 亚洲a在线视频| 国产日韩在线观看视频| 不卡一区2区| 精品亚洲成人| 亚洲精品字幕| 久久国产亚洲| 精品欧美视频| 亚洲制服一区| 99精品视频在线| 欧洲在线一区| 麻豆91在线播放| 亚洲一区二区三区中文字幕在线观看| av资源中文在线| 日本午夜精品视频在线观看| 久久精品国产亚洲夜色av网站| 国产日产一区| 噜噜噜躁狠狠躁狠狠精品视频| 国产一区二区三区成人欧美日韩在线观看 | 日韩国产精品久久久久久亚洲| 91精品国产自产在线观看永久∴| 97久久超碰| 国产精品婷婷| 日韩一区二区在线免费| 国产精品久久久久毛片大屁完整版| 亚洲欧美激情诱惑| 国产99久久| 91亚洲国产成人久久精品| 日本不卡高清视频| 亚洲一区二区免费看| www在线观看黄色| 国产毛片一区二区三区| 亚洲精品极品| 久久大逼视频| 亚洲精品一区二区妖精| 成人精品天堂一区二区三区| 午夜欧美视频| 亚洲精品1区| 一区三区视频| 尹人成人综合网| 亚洲一级高清| 亚洲精品小说| 亚洲精品电影| 99re国产精品| 另类激情亚洲| 石原莉奈在线亚洲三区| 午夜av一区| 久久中文字幕一区二区三区| 欧美一区二区三区久久精品| 日韩视频不卡| 成人av二区| 亚洲伊人av| 欧美精品不卡| 欧美午夜三级| 中文字幕一区二区三区四区久久| 欧美大黑bbbbbbbbb在线| 亚洲黄色免费看| 免费在线日韩av| 国产午夜精品一区在线观看| av在线日韩| 高潮久久久久久久久久久久久久| 日韩av在线免费观看不卡| 亚洲激情社区| 国产一区观看| 欧美日韩中文字幕一区二区三区| 91精品美女| 奶水喷射视频一区| 女主播福利一区| 国产精品成人a在线观看| 国产日韩一区二区三区在线播放| 亚洲欧美激情诱惑| 九九久久电影| 99久久久久| 韩国久久久久久| 国产成人精品亚洲线观看| 国产情侣久久| 久久精品99久久久| 午夜精品福利影院| 日韩精品一区二区三区中文在线 | 国产成人免费av一区二区午夜| 美女久久久久久 | 欧美一区=区| 亚洲欧美日本视频在线观看| 狠狠色狠狠色综合日日tαg| 婷婷综合社区| 老牛国产精品一区的观看方式| 欧美日韩国产在线一区| 亚洲福利一区| 激情综合网站| 狠狠久久婷婷| 国产精品普通话对白| 亚洲免费在线| 亚洲人成精品久久久| 天堂精品久久久久| 日韩成人午夜精品| 国产毛片久久久| 精品五月天堂| 日韩电影二区| 国产高清一区| 综合国产精品| 国产精品亚洲综合在线观看| 免费日韩一区二区三区| 97精品国产| 欧美成人午夜| 午夜在线精品偷拍| 亚洲精选成人| 国产欧美一区二区三区精品观看| 国产精品分类| 精品免费在线| 久久久精品五月天| 三级亚洲高清视频| 亚洲最大av| 欧美国产专区| 蜜桃av.网站在线观看| 自拍日韩欧美| 日韩精品欧美大片| 麻豆久久一区| 国产超碰精品| 日韩欧美中文在线观看| 91欧美精品| 成人日韩av| 激情综合激情| 亚洲毛片在线免费| 一本综合精品| 国产精品高潮呻吟久久久久| 精品美女视频 | 91p九色成人| 激情国产在线| 久久高清国产| 麻豆久久久久久| 午夜久久黄色| 国产精品亚洲欧美| 日韩精品免费一区二区在线观看| 爽好久久久欧美精品| 国产精品成人**免费视频| 神马久久午夜| 中文字幕日韩欧美精品高清在线| 欧美激情五月| 亚洲国产日韩欧美在线| 久久国产精品免费一区二区三区| 欧美freesex黑人又粗又大| 亚洲欧美日韩视频二区| 精品一区二区三区中文字幕| 午夜av一区| 国产黄色一区| 青青草伊人久久| 亚洲www啪成人一区二区| 视频一区视频二区中文| 精品一二三区| 蜜臀a∨国产成人精品| 国产色噜噜噜91在线精品| 欧美成人精品| 麻豆精品久久久| 亚洲经典在线| 97人人精品| 亚州av一区| 激情婷婷亚洲|