Skip to content

Commit 4671b5b

Browse files
committed
[css-flexbox] Add a11y conformance criteria for authoring tools, per WG resolution.
1 parent 392930c commit 4671b5b

3 files changed

Lines changed: 321 additions & 261 deletions

File tree

css-flexbox/Overview.bs

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1235,8 +1235,8 @@ Reordering and Accessibility</h4>
12351235
(such as cycling through links, see e.g. <a href="http://www.w3.org/TR/html5/editing.html#sequential-focus-navigation-and-the-tabindex-attribute"><code>tabindex</code></a> [[HTML5]]).
12361236

12371237
Advisement:
1238-
Authors <em>must</em> use 'order' only for visual, not logical, reordering of content;
1239-
style sheets that use 'order' to perform logical reordering are non-conforming.
1238+
Authors <em>must</em> use 'order' only for visual, not logical, reordering of content.
1239+
Style sheets that use 'order' to perform logical reordering are non-conforming.
12401240

12411241
Note: This is so that non-visual media and non-CSS UAs,
12421242
which typically present content linearly,
@@ -1306,6 +1306,33 @@ Reordering and Accessibility</h4>
13061306
<small>(Further use of multi-line flex containers to achieve even more intelligent wrapping left as an exercise for the reader.)</small>
13071307
</div>
13081308

1309+
In order to preserve the author's intended ordering in all presentation modes,
1310+
authoring tools&mdash;including WYSIWYG editors as well as Web-based authoring aids--
1311+
must reorder the underlying document source
1312+
and not use 'order' to perform reordering
1313+
unless the author has explicitly indicated that the underlying
1314+
document order (which determines speech and navigation order) should be
1315+
<em>out-of-sync</em> with the visual order.
1316+
1317+
<div class="example">
1318+
For example, a tool might offer both drag-and-drop reordering of flex items
1319+
as well as handling of media queries for alternate layouts per screen size range.
1320+
1321+
Since most of the time, reordering should affect all screen ranges
1322+
as well as navigation and speech order,
1323+
the tool would perform drag-and-drop reordering at the DOM layer.
1324+
In some cases, however, the author may want different visual orderings per screen size.
1325+
The tool could offer this functionality by using 'order' together with media queries,
1326+
but also tie the smallest screen size's ordering to the underlying DOM order
1327+
(since this is most likely to be a logical linear presentation order)
1328+
while using 'order' to determine the visual presentation order in other size ranges.
1329+
1330+
This tool would be conformant, whereas a tool that only ever used 'order'
1331+
to handle drag-and-drop reordering
1332+
(however convenient it might be to implement it that way)
1333+
would be non-conformant.
1334+
</div>
1335+
13091336
<!--
13101337
████████ ██ ████████ ██ ██ ██ ████ ██ ██ ████████ ██████
13111338
██ ██ ██ ██ ██ ██ ██ ███ ██ ██ ██ ██
@@ -3302,6 +3329,12 @@ Substantive Changes and Bugfixes</h4>
33023329
since that was a hacky way of solving an intrinsic size problem,
33033330
and isn't needed (and gives bad results)
33043331
given a correct implementation of [[#intrinsic-sizes]].
3332+
<li id="change-2015-intrinsic-sizing">
3333+
Correct instrinsic sizing rules to handle inflexible items.
3334+
<li id="change-2015-a11y-tools">
3335+
Add explicit conformance criteria on authoring tools
3336+
to keep presentation and DOM order in sync
3337+
unless author explicitly indicates a desire to make them out-of-sync.
33053338
</ul>
33063339

33073340
<h4 id="change-201505-clarify">

0 commit comments

Comments
 (0)