Re: [css-grid][css-flexbox] a11y, tools, and reordering

On 08/31/2015 07:22 PM, fantasai wrote:
> On 06/17/2015 02:28 AM, fantasai wrote:
>> Suggestion that came out of discussions at CSSDay: Put a conformance requirement
>> on *authoring tools* that whenever they reorder something visually, it's reflected
>> in the DOM (and not just hacked up with CSS grid positioning or 'order') unless the
>> author explicitly requested (i.e. opted in) to keep them different.
>
> Proposed wording:
>
> In order to preserve the author's intended ordering in all presentation modes,
> authoring tools--including WYSIWYG editors as well as Web-based authoring aids--
> must reorder the underlying document source and not use 'order' to perform
> reordering unless the author has explicitly indicated that the underlying
> document order (which determines speech and navigation order) should be
> <em>out-of-sync</em> with the visual order.
>
> For example, a tool might offer both drag-and-drop reordering of flex items
> as well as handling of media queries for alternate layouts per screen size
> range. Since most of the time, reordering should affect all screen ranges as
> well as navigation and speech order, the tool would perform drag-and-drop
> reordering at the DOM layer. In some cases, however, the author may want
> different visual orderings per screen size. The tool could offer this
> functionality using 'order' together with media queries, but also tie the
> smallest screen size's ordering to the underlying DOM order (since this is
> most likely to be a logical linear presentation order) while using 'order'
> to determine the visual presentation order in other size ranges. This tool
> would be conformant, whereas a tool that only ever used 'order' to handle
> drag-and-drop reordering (however convenient it might be to implement it
> that way) would be non-conformant.

This has now been adopted by the CSSWG and is incorporated into both the
Flexbox and Grid Layout modules.

~fantasai

Received on Tuesday, 15 September 2015 22:43:45 UTC