用xslt+css讓RSS顯示的跟網頁一樣漂亮

來源:互聯網
上載者:User

最近開始研究 XML+XSLT+CSS 構造網頁..又拿自己的站的一部分當成實驗品..
因為我把這個站的實驗室的東西扔在別一個伺服器上..可又懶得再做個首頁,,,就同步了這邊的 RSS.當首頁
可沒關聯的樣式的XML怎樣看怎樣不喜歡....

直接關聯 CSS 能把 XML 能變成像樣一點..雖然不是最終目的..可還是要學習一下..因為不是所有的瀏覽器都支援XSLT
我能用到的瀏覽器好像都能認識關聯的 CSS ~可惜單單 CSS 能做的事太少了. 還是xslt好..

寫直接用於 XML 的 CSS 跟平時寫的 CSS 基本沒什麼差別...只是元素名不同了.難度高高...寫 HTML 的自由沒有了...也不可以因為想要某個效果而亂加元素...
好像我的水平決定了我只能寫出定義得比文本好看一下下的CSS, 接著.看例子. 跳掉..研究 XSLT 了

xslt 能做的事很多..xml 終於可以直接當網頁用了..

開啟一份別人寫好的 xslt 發現....好多熟悉的東東..........
對於應用在RSS..我們對XLST只要知道

xsl:for-each select="rss/channel/item"
xsl:value-of select="..."
disable-output-escaping="yes"
一個迴圈 一個選擇節點....一個設定禁止輸出轉義時
接著複製了我程式用的模板檔案.....把 smarty 的標籤直接換成 xsl 的..太像了..我連 html 都不用寫..一路複製..
等網站的核心程式寫完後我一定要嘗試用xslt直接做smarty模板...

接著整理出一個單獨的CSS 本以為就這樣完了.........
-____________-!! 每次做網頁時總會有些瀏覽器會鬧鬧情緒...這回是 moz 核心的....
我需要顯示 CDATA 裡的 HTML ,讓他更像個網頁,
可搜尋跟我說 Mozilla 的 Transformiix 不支援 disable-output-escaping

我記得 feedburner 能在 Firefox 顯示 CDATA 裡的 HTML 程式碼~
看了他的 xslt 跟搜尋的結果發現.......基本都是用JS的innerHTML把內容再寫進一次就能顯示........

原因我也不清楚.....學著大家方法.把 disable-output-escaping 勉強解決了.........

寫 JS 時又發現...JS 有些怪怪的...比如....直接寫在 xslt 裡跟外鏈有些不同..
本想就一個頁..一個 function 亂寫能運行就行....結果又發現N多奇怪的問題..暫時也沒時間去研究他....等有空再寫些測試...

說了這樣多的廢話..
大家看看我的學習的結果, http://lab.loaoao.com

擴充閱讀
http://www.w3.org/TR/xslt/
http://www.xml.org.cn/list.asp?boardid=8
www.w3schools.com/xsl/
hedong.3322.org/archives/000044.html

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.