0
당 세포의 수 제한
내 XML은 여기, 실제로는 약 300 영화 요소 긴하지만이 당신에게 의미주고 그냥 -XSLT Muenchian 그룹화 표 - 행
<mediaList>
<movie id="1325947" dateCreated="2014-04-23">
<title>Gator</title>
<director>Burt Reynolds</director>
<genre>Action</genre>
<writer>William W. Norton</writer>
<language>English</language>
<year>1976</year>
<callNumber href="http://endeavor.flo.org/vwebv/holdingsInfo?bibId=1325947">[DVD] PN1995.9 .A3 R49 2003</callNumber>
<coverArt href="Pics/Gator.jpg"/>
</movie>
<movie id="1094761" dateCreated="2014-04-23">
<title>Assault on Precinct 13</title>
<director>Jean-François Richet</director>
<genre>Action</genre>
<genre>Police</genre>
<writer>James DeMonaco</writer>
<language>English</language>
<year>2005</year>
<callNumber href="http://endeavor.flo.org/vwebv/holdingsInfo?bibId=1094761">[DVD] PN1995.9 .A3 R53 2005</callNumber>
<coverArt href="Pics/AssaultonPrecinct13.jpg"/>
</movie>
<movie id="716486" dateCreated="2014-04-23">
<title>Thunder Road</title>
<director>Arthur Ripley</director>
<genre>Action</genre>
<genre>Crime</genre>
<writer>James Atlee Phillips</writer>
<writer>Walter Wise</writer>
<language>English</language>
<year>1958</year>
<callNumber href="http://endeavor.flo.org/vwebv/holdingsInfo?bibId=716486">[DVD] PN1995.9 .A3 R57 2000</callNumber>
<coverArt href="Pics/ThunderRoad.jpg"/>
</movie>
<movie id="1335109" dateCreated="2014-04-23">
<title>From Dusk Till Dawn</title>
<director>Robert Rodriguez</director>
<genre>Action</genre>
<genre>Vampire</genre>
<writer>Quentin Tarantino</writer>
<screenplay href="http://endeavor.flo.org/vwebv/holdingsInfo?bibId=527135">PN1997 .F7466 T37 1995</screenplay>
<language>English</language>
<year>1998</year>
<callNumber href="http://endeavor.flo.org/vwebv/holdingsInfo?bibId=1335109">[DVD] PN1995.9 .A3 R63 1998</callNumber>
<coverArt href="Pics/FromDuskTillDawn.jpg"/>
</movie>
</mediaList>
나는 몇이를 다른 스타일 시트를 사용하고 있습니다. 그 중 하나는 그림과 제목을 멋진 예쁜 레이아웃으로 변형하기위한 것입니다. 그 스타일 시트는 여기에 있습니다 :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="html" indent="yes"/>
<xsl:key name="genre" match="genre" use="."/>
<xsl:param name="groupBy" select="'genre'"/>
<xsl:template match="/*">
<html>
<head>
<link rel="stylesheet" type="text/css" href="mediaList.css"/>
</head>
<body>
<xsl:apply-templates
select="movie//*[local-name() = $groupBy][generate-id() = generate-id(key($groupBy, .)[1])]" mode="toc">
<xsl:sort order="ascending"/>
</xsl:apply-templates>
<xsl:apply-templates
select="movie//*[local-name() = $groupBy][generate-id() = generate-id(key($groupBy, .)[1])]" mode="contents">
<xsl:sort order="ascending"/>
<xsl:sort select="title"/>
</xsl:apply-templates>
</body>
</html>
</xsl:template>
<xsl:template match="movie//*" mode="contents">
<h1>
<a>
<xsl:attribute name="id">
<xsl:value-of select="."/>
</xsl:attribute>
</a>
<xsl:value-of select="."/>
</h1>
<table class="genre">
<tr>
<xsl:apply-templates select="key($groupBy, .)/ancestor::movie">
<xsl:sort select="title"/>
</xsl:apply-templates>
</tr>
</table>
</xsl:template>
<xsl:template match="movie">
<td class="genre">
<div class="image">
<div class="trick"/>
<img>
<xsl:attribute name="src">
<xsl:value-of select="coverArt/@href"/>
</xsl:attribute>
<xsl:attribute name="alt">Movie poster for '<xsl:value-of select="title"/>'
</xsl:attribute>
</img>
</div>
<br/>
<a>
<xsl:attribute name="href">
<xsl:value-of select="callNumber/@href"/>
</xsl:attribute>
<xsl:value-of select="title"/>
</a>
</td>
</xsl:template>
<xsl:template match="movie//*" mode="toc">
<a>
<xsl:attribute name="href">#<xsl:value-of select="."/>
</xsl:attribute>
<xsl:value-of select="."/>
</a>
<br/>
</xsl:template>
</stylesheet>
제가하는 데 문제는 현재 각 장르가 테이블에 한 행을 부여하고 모든 영화를보기 위해 스크롤의 톤을 필요로한다는 것이다 - 나는 방식을 원한다 제한을 말하십시오. 당 7 또는 10입니다. 각 장르는 모두 하나의 테이블에 모두 포함되어 있지만 행당 고정 된 셀 수입니다.
어떤 생각이 들었습니까? XSLT 1.0 또는 2.0 솔루션을 많이 사용해야합니다.
감사합니다! 나는 결코 전에 그 (것)들을 우연히 만나지 않을 것입니다. 당신의 추가가 도움이되는 동안,
관련 문제