- From: Loirooriol via GitHub <sysbot+gh@w3.org>
- Date: Tue, 30 May 2017 18:31:08 +0000
- To: public-css-archive@w3.org
Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts: == [css-display] What owns dysplay types, elements or boxes? == Some quotes suggest that display types are owned by boxes: > Boxes [...]. They’re often referred to by their display type > The display property defines box’s display type > the principal box’s inner display type defaults to flow > the principal box’s outer display type defaults to block. > table-cell boxes have a flow-root inner display type > table-caption boxes have a flow-root inner display type. > Boxes with layout-specific display types generate anonymous wrapper boxes > sets the box’s outer display type to block or inline (respectively) > If a block flow box is inlinified, its inner display type is set to flow-root > If an inline flow box is inlinified, it recursively inlinifies all of its in-flow children > If a layout-internal box is blockified, its inner display type converts to flow > A run-in box with a flow inner display type inlinifies its contents. > A non-replaced inline-level box whose inner display type is flow. > Any inline-level box whose inner display type is not flow establishes a new formatting context of the specified inner display type. Some quotes suggest that display types are owned by elements (including `::before`, `::after` and `::marker` pseudo-elements): > The inner display of a replaced element > The <display-outside> keywords specify the element’s outer display type > the element’s inner display type defaults to flow. > The <display-inside> keywords specify the element’s inner display type > the element’s outer display type defaults to block > both the inner display type and the outer display type of elements using these display values are set to the given keyword. > Elements with either of these values do not have inner or outer display types > The root element’s display type is always blockified. > If the element [...]. Otherwise, it is made to establish a BFC by changing its inner display type to flow-root. The difference is important because a single element can generate multiple boxes, e.g. an element with `display: block table` generates a table wrapper box and a table box. Do these boxes have display types? If they do, I guess the table wrapper box has `block flow-root` and the table box has `block table`. But then, wouldn't the table box generate another table wrapper box according to https://drafts.csswg.org/css-display-3/#valdef-display-table? Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1480 using your GitHub account
Received on Tuesday, 30 May 2017 18:31:15 UTC