[xsl] RE: Philip Rhodes creating undesirably nested p elements

Subject: [xsl] RE: Philip Rhodes creating undesirably nested p elements
From: "Conal Tuohy" <conalt@xxxxxxxxxxxxxxx>
Date: Fri, 9 Aug 2002 17:47:48 +1200
Phillip Rhodes wrote:

> I am trying to get the first "p" element of a section and 
> replace it with 
> <p class="firstsentence"> for CSS.
> What is occurring is that the first p of each section is 
> being matched, but 
> instead of replacing the matched p, it will make that matched 
> "p" a child 
> of a new element "p".

<snip/>

Here is your bug:
 
> <xsl:template match="section/p[position()=1]">
> <p class="firstsentence"> <!-- here you create a p -->
>    <xsl:copy> <!-- here you create another one -->
>        <xsl:copy-of select="@*"/>
>        <xsl:apply-templates select="node()"/>
>    </xsl:copy>
> </p>
> </xsl:template>

try something like:

<xsl:template match="section/p[position()=1]">
   <p class="firstsentence">
      <xsl:copy-of select="@*[local-name()!='class'"/>
      <xsl:apply-templates select="node()"/>
   </p>
</xsl:template>


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread