Okay, let's sum up what the spec says (to my best knowledge):
1. There are both layout-level and visual-level fragmentation.
2. The layout-level fragmentation adds appropriate padding (i.e.
breaks) in the block progression. Monolithic contents (replaced
elements, overflow clips, inline blocks) are not subject to
layout-level fragmentation, and does not propagate fragmentation
context to its descendants.
3. The visual-level fragmentation (i.e. "the separation and transfer
of page boxes") applies after raster, position:relative, and
transform. As specified in
https://drafts.csswg.org/css-break/#transforms
Here is Chris's argument:
> 1. All paint properties (i.e. effects represented in the property trees)
> should be applied *after* fragmentation
> 2. Fragmentation should not be allowed to break replaced (videos, iframes,
> images) or scrollable content.
> 3. Fragmentation should stop at replaced content and scrollable content
> boundaries.
I think Chris is arguing that we should not have visual-level
fragmentation, so we won't need to impose the complexity of
fragmentation on our compositor. I like this idea too, especially most
of time it doesn't make sense to paint inline overflow (e.g. accent
marks) or visual decoration (e.g. box shadow) to a different column /
page. However this will require a spec change.
IMO visual-level fragmentation isn't all that difficult to implement
either as a filter or a non-linear transform. I personally prefer it
to be done in the transform tree, since hit-testing will be done in
the transform tree and we want the complexity to be contained in a
single tree.