Hi,

Reading both CSS2 & XSLFO 1.1 specs,..

1/ CSS2 17.5.1 gives the order of tables layers.
background-color default to transparent.

2/ XSLFO 6.7.9 says that fo:table-row "does not generate any areas".

My question is: how to display row background if there is no area for it?

I see 2 answers:
1/ forces to display it however
In this case, 1st Vincent's schema seems to be the right one

2/ display through table-cell, using inheritence mechanism
In this case, 3rd Schema should be used.

WDYT?

Pascal

> -----Message d'origine-----
> De : Adrian Cumiskey [mailto:[EMAIL PROTECTED] 
> Envoyé : vendredi 29 juin 2007 13:03
> 
> I suppose when the spec is unclear common sense should 
> prevail.  So no disagreements.
> 
> Adrian.
> 
> Jeremias Maerki wrote:
> > Hmm, I don't find anything in XSL 1.1 or CSS 2 that would be clear 
> > enough for either solution. So I can't say it's either left 
> or right, 
> > but my personal preference would be the left solution. Shrug.
> > 
> > On 29.06.2007 11:04:13 Vincent Hennebert wrote:
> >> Guys,
> >>
> >> I believe there's a bug in the handling of table- and 
> row-backgrounds.
> >> See the following fo snippet:
> >> <fo:table width="100%"
> >>   table-layout="fixed"
> >>   border-collapse="separate"
> >>   border-separation="8pt"
> >>   background-color="blue"
> >>   border="4pt solid black">
> >>   <fo:table-column number-columns-repeated="2"
> >>     column-width="proportional-column-width(1)"/>
> >>   <fo:table-body>
> >>     <fo:table-row background-color="yellow">
> >>       <fo:table-cell border="4pt solid red" 
> number-rows-spanned="2">
> >>         <fo:block>Cell 1.1</fo:block>
> >>         <fo:block>Cell 1.1</fo:block>
> >>         <fo:block>Cell 1.1</fo:block>
> >>         <fo:block>Cell 1.1</fo:block>
> >>         <fo:block>Cell 1.1</fo:block>
> >>       </fo:table-cell>
> >>       <fo:table-cell border="4pt solid red">
> >>         <fo:block>Cell 1.2</fo:block>
> >>         <fo:block>Cell 1.2</fo:block>
> >>       </fo:table-cell>
> >>     </fo:table-row>
> >>     <fo:table-row background-color="green">
> >>       <fo:table-cell border="4pt solid red">
> >>         <fo:block>Cell 2.1</fo:block>
> >>       </fo:table-cell>
> >>     </fo:table-row>
> >>   </fo:table-body>
> >> </fo:table>
> >>
> >> The result we get is on the left on the attached picture. 
> I believe 
> >> the correct one should be the drawing on the right, 
> because the area 
> >> corresponding to the border-separation should be painted with the 
> >> background of the table, not of the rows (see §6.7.3 of 
> XSL-FO 1.1).
> >> That's what Firefox is doing.
> >>
> >> Any disagreements?
> >> Vincent
> > 
> > Jeremias Maerki

<<attachment: table-row_backgrounds.png>>

Reply via email to