Damn, Glen, thanks for being so insistent. I was indeed wrong. You didn't really give me the prove I needed to be rewired but you got me looking again all over the spec and I found what was wrong:
It doesn't really matter if the FOs generate reference areas or not, the key is that 5.3.2 is talking exclusively about block-level FOs. See the comment within paratheses in the first and second paragraphs in 5.3.2, for example: "There are two more properties, "end-indent" and "start-indent" (block-level formatting objects) which correspond..." p-s-m and r-b are no block-level FOs. D'Oh! Even though p-s-m and r-b refer to the "7.10 Common Margin Properties-Block", the properties space-before|after and start|end-indent only apply to block-level FOs. Sections 6.4.12 and 6.4.13 explain that the margin-* properties have to be used to calculate the indents for these the two FOs in question. I used start|end-indent. :-( So the 5.3.2 rules cannot be triggered, not because p-s-m and r-b don't generate reference area, but because they are no block-level FOs!!! In this light you were right to complain about my bringing in the block-container example. Still, RenderX is wrong about the block-container thing. That part still stands. RenderX (and AntennaHouse) deliberately chose to break inheritance rules in these cases. This is documented in [1]. But as you say, this is a different story. [1] http://www.w3.org/2001/08/28-XSL-PR-DOC.html (see comment 20) Wow, now I need a pause. Thank you, Glen! Jeremias Maerki