-
Notifications
You must be signed in to change notification settings - Fork 675
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
[css-align][css-flexbox] Should align-self
and flex
(& its subproperties) be honored on table wrapper box?
#547
Comments
We probably need this for the grid spec, too, for all of its properties that apply to grid items (e.g. Also, I should clarify one thing -- when I say |
Somewhat related to this, is this discussion - albeit about composited based properties #324 |
Yes, you're right about the spirit of the split: all new properties, if they apply to tables at all, need to specify whether they apply to the table box or the table wrapper box (because they don't apply to both certainly), and the alignment properties, grid placement properties, and I'm not sure, atm, what's a good way of representing this information. :) It falls along the lines of "does this property apply to ::first-line"? |
Looks like we had text for this in the past, but deleted it: https://drafts.csswg.org/css-flexbox/#change-2015-anonymous-fixup. I assume that we accidentally assumed the references to "table wrapper box" were referring to the anonymous table box that gets wrapped around bare table-cells/etc during box-tree fixup. Should we just restore it? Everyone's interoperable, but with clearly wrong behavior. |
My opinion is the other thread (#948). TLDR: I am fine with adding text to hoist flex/align-*/etc in the tables spec, I just continue to think it would be easier to stop pretending we don't just want the table-wrapper box to be the box generated for the |
FWIW it has been resolved in today's call to restore the deleted text in flex, and continue to work on a more general level in another, separate github issue. I'll crosslink that new issue here when I get to file it. |
Load https://jsfiddle.net/vhomvqor/3/ in Firefox, Edge, or Chrome. This testcase has a flex container, with a
display:table
child inside of it. That child hasflex:1
andalign-self:flex-end
.For some reason, Chrome / Edge / Firefox all interoperably honor
align-self
but do not honorflex:1
on the child.I'm curious if we're all somehow correct (I think we're probably not), or whether we need to make this consistent & get it specced.
Technically, I think ignoring these properties is the most spec-compliant thing to do, since the flex item here is really the
table wrapper box
, and thetable wrapper box
isn't author-stylable & only honors a strict whitelist of properties that it takes from itstable box
(and all other properties should be at their initial values), as described in CSS2 section 17.4: https://www.w3.org/TR/CSS2/tables.html#modelBut subjectively, I think the spirit/intent of that table spec-text is something like: "if a property is meant to be used by an element's container, it should be used on the
table wrapper box
." (Maybe I'm interpreting it too broadly, but that seems like a reasonable behavior.) If this interpretation is correct, then bothalign-self
andflex
would fit the bill...Perhaps the flexbox spec (and css-align spec) should include some normative text that broadens the list of a table's properties that are used on the table-wrapper-box?
The text was updated successfully, but these errors were encountered: