Re: [csswg-drafts] [css-display-4] Initial value of `reading-flow` (#11396)

The CSS Working Group just discussed ``[css-display-4] Initial value of `reading-flow` ``, and agreed to the following:

* `RESOLVED: Initial value of reading-flow is "normal".`
* `RESOLVED: Add 'source-order' value applying also to block containers.`
* `RESOLVED: No change to the default behavior for reading-flow and dense grid for now, because there's no proposal`

<details><summary>The full IRC log of that discussion</summary>
&lt;fantasai> TabAtkins: https://github.com/w3c/csswg-drafts/issues/11396#issuecomment-2715874704<br>
&lt;fantasai> TabAtkins: reading-flow changes the order that elements will show up in a11y tools to better match visual layout<br>
&lt;fantasai> TabAtkins: reading-order applies to children, and explicitly reorders<br>
&lt;fantasai> TabAtkins: This can help opt things out of visual reordering<br>
&lt;fantasai> TabAtkins: After some discussions about what needs to be done here, we have 4 points<br>
&lt;fantasai> TabAtkins: 1. Initial value should stay as normal.<br>
&lt;fantasai> TabAtkins: 2. Adding a 'source-order' value, which has no effect on reading-flow normally, but creates reading-flow container side-effects: allows reading-order, and applies tabindex scoping<br>
&lt;fantasai> TabAtkins: 3. 'source-order' applies to block containers as well as flex/grid<br>
&lt;fantasai> astearns: let's pause there<br>
&lt;fantasai> astearns: Any concerns about resolving on initial value of reading-flow as normal?<br>
&lt;fantasai> RESOLVED: Initial value of reading-flow is "normal".<br>
&lt;fantasai> astearns: proposed to add 'source-order' value that will also apply to block containers<br>
&lt;fantasai> RESOLVED: Add 'source-order' value applying also to block containers.<br>
&lt;fantasai> TabAtkins: Next batch of questions was about defaults.<br>
&lt;fantasai> TabAtkins: 1. Suggestion that perhaps dense grids could automatically opt into an appropriate reading-flow value by default<br>
&lt;fantasai> TabAtkins: But suggestion to not do that<br>
&lt;fantasai> TabAtkins: so suggested to resolve not to have an effect on dense grids<br>
&lt;astearns> ack fantasai<br>
&lt;TabAtkins> fantasai: we raised this issue because dense grids are ac ase we might want to ahve autoamtic behavior<br>
&lt;TabAtkins> fantasai: but also some concerns with that<br>
&lt;TabAtkins> fantasai: it would apply the tab-index scoping bheavior by default, which might not be expected<br>
&lt;TabAtkins> fantasai: tho that's a bit more of an edge case, since positive tabindexes are strongly discouraged (due to bad effects)<br>
&lt;TabAtkins> fantasai: the other aspect is , Tab when you suggested we shoudl apply one fo the visual reordering modes to dense-packed grids by default, th epushback wasn'ta bout not doing anything, it was that it would reorder everything in the grid, not just the auto-placed items<br>
&lt;TabAtkins> fantasai: so if an author was placing key items and auto-placing around those, it woudl be harmful to switch the entire grid into a naive visual scan of the grid<br>
&lt;TabAtkins> fantasai: so if we're goign to do something by default it needs to have a lesser effectd<br>
&lt;TabAtkins> fantasai: something that wouldn't break layouts that are using explicit placement with auto placement<br>
&lt;TabAtkins> fantasai: so i dont' think we necessarily shouldn't do anything for dense packing, but we shoudln't use one fo the existing values by default<br>
&lt;fantasai> TabAtkins: You're suggesting a new value not discussed as a default. That's concerning, would like default value to be well-thought-out<br>
&lt;fantasai> TabAtkins: I suspect problem space, while potentially useful, is complex.<br>
&lt;fantasai> TabAtkins: naive visual scan is simple to talk about and understand<br>
&lt;fantasai> TabAtkins: More complicated behavior, would want to be much more deliberate in designing<br>
&lt;fantasai> TabAtkins: So prefer to go with no special behavior<br>
&lt;fantasai> fantasai: That is what this issue was for discussing.<br>
&lt;fantasai> TabAtkins: We want to be shipping this soon, and issue was open since December (SO MANY MONTHS AGO)<br>
&lt;fantasai> TabAtkins: so we want to close the issue with no change.<br>
&lt;TabAtkins> (I did not say "so many months ago", that's scribe editorializing)<br>
&lt;TabAtkins> TabAtkins: So, Elika, are you objecting to the default behavior for dense grids being nothing special?<br>
&lt;TabAtkins> fantasai: I think we should still think about it, but it shoudln't block shipping<br>
&lt;fantasai> TabAtkins: Unsure about changing later, but if we're sticking with no special behavior for now it's fine with me<br>
&lt;fantasai> fantasai: sounds like we should just move on then, and leave the issue open<br>
&lt;fantasai> TabAtkins: We want a resolution for no change.<br>
&lt;TabAtkins> But without prejudice<br>
&lt;dholbert> TabAtkins: this isn't leaving the issue open; I'd like to resolve it, but without prejudice<br>
&lt;dholbert> astearns: so no change to the spec, are you ok with that fantasai?<br>
&lt;dholbert> fantasai: I think this is an open issue, we shouldn't close it. we should keep thinking about this<br>
&lt;dholbert> TabAtkins: I'm proposing we resolve on no-change-for-now<br>
&lt;dholbert> fantasai: a resolution of no-change means the wg has decided they don't want to make a change<br>
&lt;dholbert> TabAtkins: that's not the proposed resolution. I'm suggesting we close the question, not closing the issue<br>
&lt;dholbert> TabAtkins: maybe we resolve no-change-for-now- because there's no proposal. I'm fine with that<br>
&lt;dholbert> PROPOSED: No change for now, because there's no proposal<br>
&lt;dholbert> RESOLVED: No change to the default behavior for reading-flow and dense grid for now, because there's no proposal<br>
&lt;dholbert> TabAtkins: last point on this issue:<br>
&lt;dholbert> TabAtkins: whether or not reading-order works by default.<br>
&lt;dholbert> TabAtkins: per  spec right now, reading-order only works on children of reading-flow containers (those with non-default initial value)<br>
&lt;dholbert> TabAtkins: now that we have source-order (which just makes something a r-f container), you can take any flex/grid/block and turn on reading-flow for it, and the only effects are tab-index scoping &amp; allowing reading-order to work on its children<br>
&lt;dholbert> TabAtkins: apple proposes that we let r-o work by default *and* opt the element's parent into being a r-f container<br>
&lt;dholbert> TabAtkins: (presumably w/ source-order value)<br>
&lt;dholbert> TabAtkins: we prefer not doing that<br>
&lt;dholbert> TabAtkins: objections: 1st from emilio: because you need to know whether things are a r-f container for various purposes, it's annoying to have that depend on the children<br>
&lt;dholbert> TabAtkins: 2. more important from me personally: because there are side-effects, and they might be unwanted, I don't like being a parent being implicitly opted in for something that might be variable across a page or  between pages (if you have multiple similar containers and only some of them have a reading-order child)<br>
&lt;dholbert> TabAtkins: or if the child's reading-order gets toggled on/off (and has side effects on parents)<br>
&lt;dholbert> TabAtkins: I don't think it makes sense for a11y order to be toggled by this implicit behavior<br>
&lt;dholbert> TabAtkins: Also, the dependence on a parent/child relationship here is relatively rare in css<br>
&lt;dholbert> TabAtkins: where that happens in CSS, it's extremely tied together - grid parent/grid-child, etc<br>
&lt;dholbert> TabAtkins: that doesn't feel like the case for reading-order<br>
&lt;dholbert> TabAtkins: I'd prefer having r-f be opted in before r-o turns on<br>
&lt;Rossen5> q?<br>
&lt;dholbert> TabAtkins: It's possible that an author sets one and then never tests it. The failure case is that the page works the same as it does today<br>
&lt;dholbert> TabAtkins: the perf and the unpredictability of container creation make me lean towards no-to-implicit-creation<br>
&lt;emilio> +q<br>
&lt;dholbert> emilio: that was meant to be a +1<br>
&lt;emilio> ack emilio<br>
&lt;Rossen5> ack fantasai<br>
&lt;dholbert> fantasai: we discussed this with our a11y folks and they raised various  questions that we haven't finished digging into<br>
&lt;dholbert> fantasai: and those might invalidate some parts of Tab's argument<br>
&lt;dholbert> fantasai: so I'd object to taking a resolution either way for now<br>
&lt;dholbert> TabAtkins: any details? This feels analogous to other parent/child relationships across aria where opting in is important<br>
&lt;dholbert> fantasai: one of the qs is should we even have these [...]  Is this tab-index scoping behavior, on-the-whole, better or worse than not having that automatic tab-index scoping behavior<br>
&lt;dholbert> fantasai: if it's worse, then some of the premises of Tab's arguments are invalid<br>
&lt;dholbert> TabAtkins: I think we adopted the tabindex scoping behavior on the recommendation of w3c a11y folks, so that part feels like it should be fine<br>
&lt;dholbert> TabAtkins: I'm ok leaving this open to wait for your feedback<br>
&lt;PaulG> I'll make sure APA knows about it<br>
&lt;dholbert> Rossen5: no resolution on this one for now then. we'll await feedback from fantasai and team<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11396#issuecomment-2755105190 using your GitHub account


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

Received on Wednesday, 26 March 2025 16:58:13 UTC