使用 XSLT 显示 XML

XSLT 是首选的 XML 样式表语言。

XSLT (eXtensible Stylesheet Language Transformations) 远比 CSS 更加完善。

使用 XSLT 的方法之一是在浏览器显示 XML 文件之前,先把它转换为 HTML

xml文件

<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="xslTest.xsl"?>
 <breakfast_menu>
   <food>
    <name>Belgian Waffles</name>
    <price>$5.95</price>
    <description>two of our famous Belgian Waffles with plenty of real maple syrup</description>
    <calories>650</calories>
  </food>
   <food>
    <name>Strawberry Belgian Waffles</name>
    <price>$7.95</price>
    <description>light Belgian waffles covered with strawberries and whipped cream</description>
    <calories>900</calories>
  </food>
   <food>
    <name>Berry-Berry Belgian Waffles</name>
    <price>$8.95</price>
    <description>light Belgian waffles covered with an assortment of fresh berries and whipped cream</description>
    <calories>900</calories>
  </food>
   <food>
    <name>French Toast</name>
    <price>$4.50</price>
    <description>thick slices made from our homemade sourdough bread</description>
    <calories>600</calories>
  </food>
   <food>
    <name>Homestyle Breakfast</name>
    <price>$6.95</price>
    <description>two eggs, bacon or sausage, toast, and our ever-popular hash browns</description>
    <calories>950</calories>
  </food>
</breakfast_menu>

 

xsl文件

<?xml version="1.0" encoding="iso-8859-1" ?>
 <html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
   <body style="font-family:Arial,helvetica,sans-serif;font-size:12pt; background-color:#EEEEEE">
     <xsl:for-each select="breakfast_menu/food">
       <div style="background-color:teal;color:white;padding:4px">
         <span style="font-weight:bold;color:white">
          <xsl:value-of select="name" />
        </span>
       
        <xsl:value-of select="price" />
      </div>
       <div style="margin-left:20px;margin-bottom:1em;font-size:10pt">
        <xsl:value-of select="description" />
         <span style="font-style:italic">
          (<xsl:value-of select="calories" /> calories per serving)
        </span>
      </div>
    </xsl:for-each>
  </body>
</html>

posted @ 2010-03-24 15:18    阅读(180)  评论(0编辑  收藏  举报