[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Find the node name of the parent in the result tre
On Fri, Mar 22, 2013 at 2:14 PM, Martin Holmes <mholmes@xxxxxxx> wrote: > If I have a template matching an attribute, and producing one in the output > tree, like this: > > <xsl:template match="@style"> > <xsl:attribute name="style" select="."/> > </xsl:template> > > Is there any way to know the name of the element in the result tree which is > the parent of the attribute being created? > > Some context: I'm turning TEI @style attributes into HTML @style attributes > in the output, and I'd like to handle situations in which this kind of > input: > > <hi rend="text-align: center;">Centred text</hi> > > results in output that doesn't work: > > <span style="text-align: center;">NOT centred because it's a span</span> > > If I knew the output element was a <span> or element which is inline by > default, I could add "display: block" automatically to any @style attribute > that contains a block-level CSS property such as text-align. I don't want to > add "display: block" in all cases, because e.g. a <div> element might > already have a class which floats it. > > Cheers, > Martin A two-stage stylesheet pipeline would work, provided that the context you need is either *all* from the original document or *all* from the result document (but not pieces/parts from each). (Also provided no particular resource constraint.) Might also be stylistically better than munging it all into one stylesheet, if doing so separates different components of the presentation. -Brian
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|