2011-11-09 59 views
1

我一直想知道現在。您可以使用XML和XSLT創建網站構建嗎?對於我知道的一個事實,您可以使用類似於CSS的XSLT來設置XML頁面的樣式。我在URL中看到了一些擴展名爲.xml的網站,但我認爲這更像是Mod_Rewrite而不是實際的.XML文件。所以有人可以證實這一點。可能嗎?或者是不可能讓基於XML的網頁只是喜歡用HTML?是否可以像HTML一樣構建完整的XML網頁?

回答

3

是的,當然你可以做到這一點。很多人都這樣做。要擴展一點,有三個階段可以應用XSLT:在發佈時(在這種情況下,您在您的網站上發佈HTML,並且您的用戶永遠不會知道它是XML);在服務器的頁面交付時間和在客戶端瀏覽器的頁面交付時間。相對較少的人使用客戶端XSLT,因爲直到最近它纔在每個瀏覽器上都可用(甚至現在,它通常在移動瀏覽器上不可用)。

1

當然,使用XML數據和Velocity模板來生成頁面。

我更喜歡Velocity,因爲模板看起來像最終產品;與XSL-T不同。

+0

嗯,有趣。而且我始終認爲,你無法用XML做很多事情,而且我剛剛爲自己學到了一些新東西。 –

+0

實際上,您可以按照您編寫簡單Velocity模板的方式使用稱爲「簡化樣式表」的XSLT小部分。但是很少有人將自己侷限於這個子集,因爲完全使用XSLT模板規則爲您提供了更多的功能和靈活性。 –

+0

這不是問題的規則或權力。 Velocity的優勢在於模板看起來完全像你想要製作的東西。用戶界面開發人員不太可能知道XSL-T是如何工作的,但他們知道HTML頁面的樣子。它擴大了可以用於生成動態內容的觀衆。 – duffymo

1

請注意,您也可以使用CSS來設置.xml樣式。但是,由於沒有默認的樣式,您必須明確每個元素標記的CSS顯示屬性。 您還可以使用生成的內容添加文本的CSS,例如,顯示 <sometag>text</sometag>sometag: text

然而,越來越鏈接語義工作跨瀏覽器是一個有點問題:

link {text-decoration: underline; color: blue; link: attr(href)} 

例如,將在一些但不是所有的瀏覽器中工作,使<link href=URL> 工作就像一個可點擊的鏈接。 (也許一個JavaScript的解決方案工作更加便攜。)

但這樣做的XSLT轉換將在一個<?xml-stylesheet >指令 瀏覽器的HTML似乎在所有現代瀏覽器的工作沒有問題,並且能比CSS多了不少孤獨。

一些示例here

相關問題