XSL转换-XML数据到HTML表的转换
我试着用XSLT2.0做同样的表,就像在这个问题中一样,但我希望输出像这样-标题将在左侧 有没有办法写一个样式表呢 XMLXSL转换-XML数据到HTML表的转换,xml,xslt-2.0,Xml,Xslt 2.0,我试着用XSLT2.0做同样的表,就像在这个问题中一样,但我希望输出像这样-标题将在左侧 有没有办法写一个样式表呢 XML 您只需创建相应的HTML表结构: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" expand-text="yes" version="3.0"> <xsl:out
您只需创建相应的HTML表结构:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
expand-text="yes"
version="3.0">
<xsl:output method="html" indent="yes" html-version="5"/>
<xsl:template match="/">
<html>
<head>
<title>.NET XSLT Fiddle Example</title>
<style xsl:expand-text="no">
table {
border-collapse: collapse; width: 100%;
}
th, td {
border-bottom: 1px solid #ddd;
}
</style>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="root">
<table>
<tr>
<td>Time</td>
<xsl:for-each select="sort(distinct-values(sample/@time))">
<td>{.}</td>
</xsl:for-each>
</tr>
<xsl:for-each-group select="sample[starts-with(@label, 'cpu')]" group-by="@label">
<xsl:sort select="current-grouping-key()"/>
<tr>
<td>{current-grouping-key()}</td>
<xsl:for-each select="current-group()">
<xsl:sort select="@time"/>
<td>{value}</td>
</xsl:for-each>
</tr>
</xsl:for-each-group>
</table>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
expand-text="yes"
version="3.0">
<xsl:output method="html" indent="yes" html-version="5"/>
<xsl:template match="/">
<html>
<head>
<title>.NET XSLT Fiddle Example</title>
<style xsl:expand-text="no">
table {
border-collapse: collapse; width: 100%;
}
th, td {
border-bottom: 1px solid #ddd;
}
</style>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="root">
<table>
<tr>
<td>Time</td>
<xsl:for-each select="sort(distinct-values(sample/@time))">
<td>{.}</td>
</xsl:for-each>
</tr>
<xsl:for-each-group select="sample[starts-with(@label, 'cpu')]" group-by="@label">
<xsl:sort select="current-grouping-key()"/>
<tr>
<td>{current-grouping-key()}</td>
<xsl:for-each select="current-group()">
<xsl:sort select="@time"/>
<td>{value}</td>
</xsl:for-each>
</tr>
</xsl:for-each-group>
</table>
</xsl:template>
</xsl:stylesheet>