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

您的位置:首頁技術(shù)文章
文章詳情頁

XSL簡明教程

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

一. XSL入門

1.XSL---XML的樣式表

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

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

XSL由兩部分組成:

一是轉(zhuǎn)化XML文檔;二是格式化XML文檔。

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

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

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

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

4.XSL在IE5中的顯示

注意:IE5.0中,并不能完全兼容W3C組織發(fā)布的最新XSL標(biāo)準(zhǔn)。因為IE5.0是在XSL標(biāo)準(zhǔn)最終確定以前發(fā)布的。微軟已經(jīng)承諾在IE5.5中修正。 二.XSL的轉(zhuǎn)換
  1.將XML轉(zhuǎn)換成HTML

XSL是如何將XML文檔轉(zhuǎn)換成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數(shù)據(jù)轉(zhuǎn)換為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元素用來在當(dāng)前層次中插入子元素的內(nèi)容模板。

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

如果為XML文檔加上XSL樣式表,看下面代碼第2行,你的瀏覽器就可以精確的將XML 文檔轉(zhuǎn)換為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--在客戶端的實現(xiàn)
  1.JavaScript解決方案

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

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

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

a.允許Javascript代替瀏覽器進(jìn)行細(xì)節(jié)檢測;

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

對于XSL來說這是完全可行的。設(shè)計XSL的目標(biāo)之一就是允許將一種格式轉(zhuǎn)換成另一種格式,支持不同的瀏覽器,支持不同的用戶需求。未來的瀏覽器的重要任務(wù)就是在客戶端執(zhí)行XSL的轉(zhuǎn)換工作。

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>
  注意,現(xiàn)在XML文件還沒有加入XSL樣式表,還沒有被轉(zhuǎn)換成HTML文件。

下面是用JavaSript來實現(xiàn)最后轉(zhuǎn)換的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,您最好專門學(xué)習(xí)一下。

第一段代碼建立一個Microsoft Parser(XMLDOM)解析的對象,并將XML文檔讀入內(nèi)存;第二段代碼建立另外一個對象并導(dǎo)入XSL文檔;最后一行代碼將XML文檔用XSL文檔轉(zhuǎn)換,并將結(jié)果輸出到HTML文件中。
標(biāo)簽: XML/RSS
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产日本精品| 国产精品久久久久av蜜臀| 日韩av自拍| 99国产精品| 麻豆精品视频在线| 国产无遮挡裸体免费久久| 国产欧美一区二区三区米奇| 日韩精品视频在线看| 国产精品一区二区精品视频观看| 亚洲天堂成人| 国产欧美在线| 国产毛片久久久| 综合日韩在线| 伊人影院久久| 国产精品2区| 蜜臀va亚洲va欧美va天堂| 蜜臀av一区二区三区| 亚洲精品日韩久久| 国产一区二区三区四区五区| 亚洲主播在线| 久久网站免费观看| 国产视频一区二| 亚洲欧洲专区| 日韩一区三区| 91精品久久久久久久久久不卡| 日韩大片在线| 99久久夜色精品国产亚洲狼| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 欧美a一区二区| 亚洲精选久久| 国产精品视频一区二区三区综合| 日韩视频1区| 美女精品视频在线| 欧美激情一区| 久久先锋影音| 成人在线视频中文字幕| 欧美日韩精品一区二区视频| 一区二区日韩免费看| 国产免费成人| 欧美.日韩.国产.一区.二区| 国产精品成人自拍| 国产日韩欧美三区| 久久xxx视频| 久久久噜噜噜| 噜噜噜久久亚洲精品国产品小说| 日韩精品一二三四| 国产精品二区影院| 成人黄色av| 夜夜精品视频| 日本久久一区| 水蜜桃久久夜色精品一区| av亚洲一区二区三区| 九九99久久精品在免费线bt| 你懂的亚洲视频| 成人在线视频免费| 日韩一级精品| 欧美日韩伊人| 91综合视频| 国产videos久久| 在线成人直播| 捆绑调教美女网站视频一区| 欧洲av不卡| 爽好久久久欧美精品| 国产第一亚洲| 日韩网站在线| 欧美在线精品一区| 国产一区二区三区精品在线观看| 精品视频一区二区三区在线观看| 国产精品高清一区二区| 日韩专区精品| av免费不卡国产观看| 国产精久久一区二区| 亚洲97av| 久久免费视频66| 精品精品久久| 91日韩欧美| 亚洲午夜精品久久久久久app| 国产亚洲精品v| 丝袜脚交一区二区| 日本中文字幕视频一区| 欧美日韩亚洲一区三区| 亚洲丝袜美腿一区| 私拍精品福利视频在线一区| 欧美激情亚洲| 中文字幕日韩高清在线| 亚洲精华国产欧美| 日韩**一区毛片| 欧美日韩一区二区三区四区在线观看 | 国产精品调教| 亚洲一级黄色| 欧美专区在线| 97视频热人人精品免费| 精品中文字幕一区二区三区四区| 国产日韩在线观看视频| 国产精品亚洲二区| 欧美日韩免费看片| 极品日韩av| 综合精品一区| 久久精品理论片| 精品一区二区三区四区五区| 久久国产精品亚洲77777| 精品国产不卡| 日本不卡一区二区| 天堂资源在线亚洲| 国产一区国产二区国产三区 | 成人亚洲一区| 蜜臀精品一区二区三区在线观看 | 日韩在线观看不卡| 精品国产午夜肉伦伦影院| 国产亚洲亚洲| 午夜久久av | 少妇精品在线| 亚洲香蕉视频| 日韩电影免费网址| 日韩**一区毛片| 久久精品福利| 美女久久99| 免费在线视频一区| 91中文字幕精品永久在线| 欧美精品aa| 免费久久精品视频| 日韩欧美一区二区三区免费看| 六月丁香综合| 国产亚洲一区二区手机在线观看| 日韩动漫一区| 亚洲精品乱码日韩| 久久一二三区| 九九在线精品| 国产精品v亚洲精品v日韩精品| 麻豆91精品视频| 国产日产精品_国产精品毛片| 久久精品青草| 精品精品99| 999国产精品| 亚洲免费观看| 国产高清一区二区| aa国产精品| 一区在线免费观看| 日韩中文在线电影| 久久精品国产成人一区二区三区| 亚洲神马久久| 亚洲激情中文| 亚洲成人二区| 999精品色在线播放| 午夜亚洲一区| 亚洲精品少妇| 国产精品videosex极品| 你懂的国产精品| 国产亚洲精品精品国产亚洲综合| 日韩欧美另类中文字幕| 久久精品亚洲人成影院 | 精品福利久久久| 日本免费新一区视频| 日韩三级一区| 国产精品黄网站| 免费观看亚洲天堂| 国产精品欧美三级在线观看| 国产三级精品三级在线观看国产| 日韩精品欧美精品| 欧美一区久久| 国产精品久久久久久久免费软件| 青青草伊人久久| 国产美女精品视频免费播放软件| 精品视频99| 日韩成人精品一区| 亚洲精品一二三区区别| 午夜在线一区| 国产伦理一区| 免费观看在线综合色| 美女国产一区| 日本久久黄色| 国产免费播放一区二区| 首页国产欧美久久| 青青国产精品| 色老板在线视频一区二区| 日韩专区在线视频| 青青伊人久久| 欧洲一级精品| 快she精品国产999| 国产精品色在线网站| 婷婷久久免费视频| 日韩av不卡在线观看| 精品少妇一区| 99久久www免费| 韩国女主播一区二区三区| 亚洲丝袜美腿一区| 久久天堂精品| 日韩av在线播放网址| 精品三级av| 精品久久久网| 国产欧美视频在线| 日本美女一区| 精品国产日韩欧美精品国产欧美日韩一区二区三区| 午夜在线一区| 亚洲尤物在线| 国产手机视频一区二区| 日本一区二区免费高清| 欧美欧美黄在线二区| 精品国产亚洲一区二区三区| 91精品久久久久久久久久不卡|