Skip to content
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

Establishing a new formatting context #2597

Closed
wants to merge 5 commits into from
Closed

Conversation

@frivoal
Copy link
Collaborator

@frivoal frivoal commented Apr 20, 2018

As discussed in the resolution of #1457 we should add to css-display a linkable definition for establishing a (new) formatting context without explicitely saying which kind, and still have the right thing happen unambiguously when possible, while being explicit that it is a spec bug to invoke this definition in the cases where it's not meaningful/possible.

This PR attempts to add this definition, and to update all the specs that should use it to do so.

I am not particularly attached to the phrasing I am proposing here. I believe it to be correct, but certainly welcome more elegant ways of saying the same thing if anyone has suggestions.

Review from @fantasai or @tabatkins (but particularly @fantasai) appreciated.

Changes in css-contain css-multicol css-align and css-rhythm should be particularly safe, since this is just adding a link without rephrasing anything.

Changes to the other specs are meant to be no-ops that merely unify the way we talk about this, without any normative effect.

@Loirooriol
Copy link
Collaborator

@Loirooriol Loirooriol commented Apr 20, 2018

I think https://drafts.csswg.org/css-display-3/#transformations should say that blockifying causes the element to establish a new formatting context. Then there would be no need to explicitly say that e.g. flex items are both blockified and establish a new formatting context, the former would imply the later.

Edit: filed #2598

@frivoal
Copy link
Collaborator Author

@frivoal frivoal commented Apr 20, 2018

@Loirooriol Could you file that as a separate issue? This is kind of related, but it seems to me to be an independent decision to make, so a separate issue seems better (also, this issue that this pull request is based on is already way too long).

@fantasai fantasai removed the ready label Apr 20, 2018
without further precision as to the type of formatting context or how to do so.
This operation is not applicable to
non-atomic inline-level boxes
nor to boxes with a layout-internal display-type.

This comment has been minimized.

@Loirooriol

Loirooriol Apr 30, 2018
Collaborator

The correct terminology seems "display type" without hyphen. And I reiterate that display types should probably belong only to elements (and pseudo-elements), not boxes, but this problem is all over the spec.

frivoal added 5 commits Apr 20, 2018
These specs used the "establish a [new] formatting context" terminology.
Link to the exported definition now that there is one.

This change is editorial.

This is a follow up on #1457
Grid and Flexbox used to need a sentence to say what kind of formatting
context grid/flex items would establish. Since that is now part of the
definition of "establishing a [new] formatting context", just link to
it.

This change is editorial.
instead of using correct-but-unique phrasing to do the same thing.

This change is editorial.
@fantasai
Copy link
Collaborator

@fantasai fantasai commented May 7, 2018

We had to do some substantial rewriting on this, so closing this PR. (We'll link to it when we commit our results.)

@fantasai fantasai closed this May 7, 2018
tabatkins added a commit that referenced this pull request May 7, 2018
…ewrite definitions to be more explicit in general, and edit various specs to properly refer to it. Closes #2597. Fixes #1457 properly.
@frivoal frivoal deleted the frivoal:establish-fc branch Jun 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants