-
Notifications
You must be signed in to change notification settings - Fork 709
[css-multicol] What happens to the mbp of the empty fragment created by a spanner being first-child of an element #2552
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
We did discuss this in April, and the resolution gives roughly the result you drew (minus Chrome's fragmentation bugs). Which we agreed was a bit weird, but the alternative was to re-arrange the top mbp so that it starts after the spanner and we decided not to do that. Also this behavior is directly analogous to what happens with block-in-inline splits. See #1072 (comment) for the resolution and the discussion leading up to it. |
Isn't this covered by the spec? https://drafts.csswg.org/css-multicol/#spanning-columns
Not quite sure what "empty fragment" means, though. |
The CSS Working Group just discussed
The full IRC log of that discussion<heycam> Topic: What happens to the mbp of the empty fragment created by a spanner being first-child of an element<heycam> github: https://github.com//issues/2552 <heycam> rachelandrew: this may well be that it is covered, not convinced in the text <heycam> ... when we resolved last time on 1072 about when the spanning element is a first child, we end up with an empty fragment, and the mbp ends up above it <heycam> ... you get this strange issue, not specced, that if you have mbp its gets split across the columns <heycam> ... I dont think it's behavior people want to expect <heycam> ... would like it to be sure it doesn't happen <Seinnd> whats going on in here? Who are you talking to heycam? <heycam> fantasai: I think the fragmentation spec doesn't allow breaks within padding <heycam> ... it's not possible to split it across all 3 columns <heycam> rachelandrew: is this something that should be specced? <heycam> fantasai: I think it should be ok, you can write a test for it <heycam> ... the top mbp should all be as one unit in a single column, the only reason to ever split is if you have a situation where the fragmentainer is too short <heycam> rachelandrew: so might not be an issue in the multicol spec <heycam> florian: if the spanner is a child of a thing with a top margin... <heycam> ... in general it's a thing that makes sense if it's the first thing <heycam> ... earlier today we added properties to opt out of this problem <heycam> rachelandrew: at the moment the behavior is not what anyone would want <heycam> ... so probably can close this issue, I will check this <myles_> is the a web platform test for this? <fantasai> rachelandrew, https://www.w3.org/TR/css-break-3/#possible-breaks <heycam> RESOLVED: close this issue no change |
In working on #1072 I built some tests and noticed something which seems suboptimal.
Where the spanner is the first child of an element with margin, padding and borders implementations then split those across the columns. I have a test case here and below is a screenshot of this in Chrome 65.
The margin is in column box 1, then the top border, then the padding with a left and right border. This seems logical although probably not what anyone wants. Either way, we don't have any text describing what should happen in this case.
The text was updated successfully, but these errors were encountered: