[csswg-drafts] [css-grid] Non-existent line names in abspos grid items (#3445)

mrego has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-grid] Non-existent line names in abspos grid items ==

Imagin the following example we have a grid container with 2 rows and 2 columns (the grid container has `position: relative` so it's the containing block of the baspos descendants).
A regular item is placed with `grid-column: 3 / foo; grid-row: 3 / foo;`, thus an implicit grid line (4) is created and considered to have `foo` as name.
Then if we have an abspos item with `grid-column: 3 / bar; grid-row: 3 / bar;` how we should resolve the `bar` line?

* 8.3. Line-based Placement (https://drafts.csswg.org/css-grid/#grid-placement-int):
  > all implicit grid lines are assumed to have that name for the purpose of finding this position.

Only checking this part of the spec it seems pretty clear that `bar` line should point to the implicit line (4) (that matches Firefox/Edge behavior, note that Blink/WebKit consider that line to be `auto` for the abspos item).

* 9.1. With a Grid Container as Containing Block (https://drafts.csswg.org/css-grid/#abspos-items):
  > If a grid-placement property refers to a non-existent line either by explicitly specifying such a line or by spanning outside of the existing implicit grid, it is instead treated as specifying auto (instead of creating new implicit grid lines)."

However reading this part I have more doubts about if it should be considered a non-existent line or not. If `bar` is not a non-existent line because we have an implicit line and we assume it could have any name, shouldn't we clarify a little bit this last sentence?

This issue is related to [bug #915551](https://bugs.chromium.org/p/chromium/issues/detail?id=915551) reported by @MatsPalmgren on Chromium.


Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/3445 using your GitHub account

Received on Monday, 17 December 2018 06:07:48 UTC