[csswg-drafts] [css-grid-3] Track definition of 'subgrid' in the direction of the stacking axis of a parent grid lanes container (#13529)

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

== [css-grid-3] Track definition of 'subgrid' in the direction of the stacking axis of a parent grid lanes container ==
The current [spec](https://drafts.csswg.org/css-grid-3/#subgrids) states that "if the parent’s corresponding axis is a [stacking axis](https://drafts.csswg.org/css-grid-3/#stacking-axis), the subgridded axis also acts as a stacking axis."

More specifically, the example below this section states that "trying to subgrid the parent’s [stacking axis](https://drafts.csswg.org/css-grid-3/#stacking-axis) results in the subgrid converting to a [grid lanes container](https://drafts.csswg.org/css-grid-3/#grid-lanes-container) with its [inline axis](https://drafts.csswg.org/css-writing-modes-4/#inline-axis) as the stacking axis".

I'm curious the reasoning for this decision, and if that still makes sense now that we've converted to using a separate display type for grid lanes? This may be a bit awkward now, since this would imply that we'd also need to switch the subgrid's display type.

My proposal would be to instead ignore the `subgrid` declaration if in direction of the parent's stacking axis and treat this as a used track definition of `none`.

This would also apply in the case where you subgrid a grid lanes container to another grid lanes container in the stacking axis. For example:

```
<div style="display: grid-lanes; grid-template-columns: 100px 100px">
    <div style="display: grid-lanes; grid-template-rows: subgrid"></div>
</div>
```

With the current spec text, it is unclear what should happen. With my proposal, you would ignore `subgrid`, and at used value time get a non-subgridded inner grid lanes container that has a track definition of `grid-template-rows: none`. The only weird thing with this is that the new default `normal` direction would mean we'd end up with a column grid lanes container with `none` as the definition as a result, since if both are `none`, we use columns, but maybe that's ok?

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


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 18 February 2026 22:34:45 UTC