@@ -1043,15 +1043,15 @@ Display Order Shorthand: the 'order' property</h3>
10431043 <dd>
10441044 If one integer and no keyword is specified,
10451045 then sets 'layout-order' to the specified integer,
1046- and sets 'reading-order' to zero .
1046+ and sets 'reading-order' to ''reading-order/auto'' .
10471047 If two integers are specified,
10481048 the first sets 'layout-order' and the second sets 'reading-order' .
10491049 Otherwise sets the appropriate [=longhand=] (s) to the specified integer(s).
10501050
10511051 <dt> <dfn>layout</dfn>
10521052 <dd>
10531053 Indicates setting 'layout-order' to the specified integer.
1054- If ''reading'' is not specified, 'reading-order' is set to zero .
1054+ If ''reading'' is not specified, 'reading-order' is set to ''reading-order/auto'' .
10551055
10561056 <dt> <dfn>reading</dfn>
10571057 <dd>
@@ -1142,8 +1142,8 @@ Reading Order: the 'reading-order' property</h3>
11421142
11431143 <pre class='propdef'>
11441144 Name : reading-order
1145- Value : <<integer>>
1146- Initial : 0
1145+ Value : auto | <<integer>>
1146+ Initial : auto
11471147 Applies to : all elements
11481148 Inherited : no
11491149 Computed value : specified integer
@@ -1153,10 +1153,22 @@ Reading Order: the 'reading-order' property</h3>
11531153 The 'reading-order' property controls the order in which
11541154 elements are rendered to speech
11551155 or are navigated to when using (linear) sequention navigation methods.
1156- It takes a single <dfn value for=reading-order><<integer>></dfn> value,
1157- which specifies which ordinal group the item belongs to.
1158- Sibling elements are ordered starting from the lowest numbered ordinal group and going up;
1159- elements with the same ordinal group are keep the order they appear in the source document.
1156+ This is their <dfn>reading and navigation order</dfn> .
1157+
1158+ <dl dfn-type=value dfn-for=reading-order>
1159+ <dt> <dfn>auto</dfn>
1160+ <dd>
1161+ Same as ''0'' except that in [=randomizing formatting contexts=]
1162+ (which are only reasonable to apply to inherently unordered content)
1163+ the reading order is matched to the layout order.
1164+ See [[#randomizing-layout]] .
1165+
1166+ <dt> <dfn><<integer>></dfn>
1167+ <dd>
1168+ Specifies which ordinal group the item belongs to.
1169+ Sibling elements are ordered starting from the lowest numbered ordinal group and going up;
1170+ elements with the same ordinal group are keep the order they appear in the source document.
1171+ </dl>
11601172
11611173 The 'reading-order' property affects neither layout nor painting order
11621174 and therefore has no effect on rendering to the visual [=canvas=] .
@@ -1180,6 +1192,39 @@ Reading Order: the 'reading-order' property</h3>
11801192
11811193 ISSUE: Is this the most appropriate interaction with with <code> tabindex</code> ?
11821194
1195+ <h4 id="randomizing-layout">
1196+ Randomizing Layout Methods and ''reading-order: auto''</h4>
1197+
1198+ <dfn>Randomizing formatting contexts</dfn>
1199+ are formatting contexts that can indiscriminately scramble the layout order,
1200+ as listed below.
1201+ Since use of such methods indicates that the underlying order of the elements
1202+ is not important,
1203+ the UA will match the [=reading and navigation order=] of the elements
1204+ to match the layout order of their boxes as follows:
1205+
1206+ <dl>
1207+ <dt> ''grid-auto-flow: dense''
1208+ <dd>
1209+ When ''grid-auto-flow: dense'' <a spec=css-grid-1>automatic placement</a>
1210+ changes the relative order of an item
1211+ with respect to other items with ''reading-order/auto'' or ''reading-order/0'' 'reading-order'
1212+ by shifting it earlier in the grid placement order,
1213+ then its placement in the [=reading and navigation order=] is likewise shifted.
1214+
1215+ <div class="example">
1216+ For example, [=grid items=] are laid out in a ''grid-auto-flow: column dense'' grid,
1217+ they are first re-ordered to [=order-modified document order=]
1218+ before applying the [[css-grid-1#auto-placement-algo]] .
1219+ Among the subset of these items whose ''reading-order'' is ''0'' or ''auto'' ,
1220+ those with ''reading-order: auto'' are shifted
1221+ to the latest position in the [=reading and navigation order=]
1222+ that is also after any items with ''reading-order: 0'' or ''reading-order: auto''
1223+ that came earlier in the [=grid-modified document order=]
1224+ (with the major axis as specified by ''grid-auto-flow'' ).
1225+ </div>
1226+ </dl>
1227+
11831228<h3 id='layout-order'>
11841229Box Order: the 'layout-order' property</h3>
11851230
0 commit comments