阅读Xslt教程,参考以下网址做一个实例

http://www.w3school.com.cn/xsl/xsl_transformation.asp

1. 在XML文件加CSS

      <?xml-stylesheet type="text/css" href="cd_catalog.css"?>

2.  在XML加Xslt文件

     <?xml-stylesheet type="text/xsl" href="testStyle.xslt"?>

环境:vs2010 framework是3.5的。

新建的是一个后辍名为xslt的文件,而非xsl的的文件,其默认有是有以下一句话

   <xsl:output method="xml" indent="yes"/>

由于我的xslt文件是输出的HTML的所以在如果其method为Xml的话就会显示不正确,,如下图

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
  <xsl:output method="html" indent="yes"/>
        <xsl:template match="/">
      <html>
        <body>
          <h2>My CD Collection</h2>
          <table border="1">
            <tr bgcolor="#9acd32">
              <th align="center" width="400px">Title</th>
              <th align="center" width="500px">Artist</th>
            </tr>
            
            <xsl:for-each select="catalog/cd">
              <xsl:sort select="artist"/>
              <xsl:if test ="price &gt;10">
              <tr>
                <td>
                  <xsl:value-of select="title"/>
                </td>
                <td><xsl:value-of select="artist"/></td>
              </tr>
              </xsl:if>
            </xsl:for-each>
          </table>
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>

只需要把method属性值改为html,或者去这句话去掉也可以,这样就可以成功显示了!

参考以下网址

http://geekswithblogs.net/Shuvo/archive/2009/02/17/how-to-refer-a-xslt-file-in-a-xml-dcoment.aspx

 

posted on 2012-05-03 16:46  gzh4455  阅读(507)  评论(0编辑  收藏  举报