Skip to content

Commit

Permalink
Move some properties from "required" to "supported" on scrollbar role (
Browse files Browse the repository at this point in the history
…#944)

Addresses #858

* Update scrollbar role prose to better reflect properties moving from 'required' to 'supported'
* Scrollbar role: remove aria-valuenow repair techniques to the fallback table and point to said table
* Remove supported but not required attrs on scrollbar from the author error handling table
  • Loading branch information
Melanie Richards authored and carmacleod committed Oct 17, 2019
1 parent 26f2ddf commit 11bb9fd
Showing 1 changed file with 12 additions and 22 deletions.
34 changes: 12 additions & 22 deletions index.html
Expand Up @@ -6585,14 +6585,12 @@ <h5>Presentational Roles Conflict Resolution</h5>
<p>A graphical object that controls the scrolling of content within a viewing area, regardless of whether the content is fully displayed within the viewing area.</p>
<p>A scrollbar represents the current value and range of possible values via the size of the scrollbar and position of the thumb with respect to the visible range of the orientation (horizontal or vertical) it controls. Its orientation represents the orientation of the scrollbar and the scrolling effect on the viewing area controlled by the scrollbar. It is typically possible to add or subtract to the current value by using directional keys such as arrow keys.</p>
<p>Authors MUST set the <pref>aria-controls</pref> attribute on the scrollbar element to reference the scrollable area it controls.</p>
<p>Authors MUST set the <pref>aria-valuemin</pref>, <pref>aria-valuemax</pref>, and <pref>aria-valuenow</pref> attributes. If missing, their implicit values follow the same rules as the <a href="https://www.w3.org/TR/html5/forms.html#range-state-%28type=range%29" title="Range state">HTML range input type</a>:</p>
<p>Authors MAY set <pref>aria-valuemin</pref> and <pref>aria-valuemax</pref> to indicate the minimum and maximum thumb position. Otherwise, their implicit values follow the same rules as the <a href="https://www.w3.org/TR/html5/forms.html#range-state-%28type=range%29" title="Range state">HTML range input type</a>:</p>
<ul>
<li>If <code>aria-valuemin</code> is missing or not a <a href="#valuetype_number">number</a>, it defaults to 0 (zero). </li>
<li>If <code>aria-valuemax</code> is missing or not a <a href="#valuetype_number">number</a>, it defaults to 100. </li>
<li>If <code>aria-valuenow</code> is missing or not a <a href="#valuetype_number">number</a>, it defaults to the value half way between <code>aria-valuemin</code> and <code>aria-valuemax</code>. </li>
<li>If <code>aria-valuenow</code> is present but less than <code>aria-valuemin</code>, it defaults to the value of <code>aria-valuemin</code>. </li>
<li>If <code>aria-valuenow</code> is present but greater than <code>aria-valuemax</code>, it defaults to the value of <code>aria-valuemax</code>. </li>
<li>If <code>aria-valuemin</code> is missing or not a <a href="#valuetype_number">number</a>, it defaults to 0 (zero).</li>
<li>If <code>aria-valuemax</code> is missing or not a <a href="#valuetype_number">number</a>, it defaults to 100.</li>
</ul>
<p>Authors MUST set the <pref>aria-valuenow</pref> attribute to indicate the current thumb position. If aria-valuenow is missing or has an unexpected value, browsers MAY implement the repair techniques specified in the <a href="authorErrorDefaultValuesTable" class="specref">section describing handling author errors in states and properties</a>, which are equivalent to the repair techniques for the <a href="https://www.w3.org/TR/html5/forms.html#range-state-%28type=range%29" title="Range state">HTML range input type</a>.</p>
<p>Elements with the role <code>scrollbar</code> have an implicit <pref>aria-orientation</pref> value of <code>vertical</code>.</p>
<p class="note">Assistive technologies generally will render the value of <pref>aria-valuenow</pref> as a percent of a range between the value of <pref>aria-valuemin</pref> and <pref>aria-valuemax</pref>, unless <pref>aria-valuetext</pref> is specified. It is best to set the values for <pref>aria-valuemin</pref>, <pref>aria-valuemax</pref>, and <pref>aria-valuenow</pref> in a manner that is appropriate for this calculation.</p>
</div>
Expand Down Expand Up @@ -6643,16 +6641,19 @@ <h5>Presentational Roles Conflict Resolution</h5>
<td class="role-required-properties">
<ul>
<li><pref>aria-controls</pref></li>
<li><pref>aria-orientation</pref></li>
<li><pref>aria-valuemax</pref></li>
<li><pref>aria-valuemin</pref></li>
<li><pref>aria-valuenow</pref></li>
</ul>
</td>
</tr>
<tr>
<th class="role-properties-head" scope="row">Supported States and Properties:</th>
<td class="role-properties"> </td>
<td class="role-properties">
<ul>
<li><pref>aria-orientation</pref></li>
<li><pref>aria-valuemax</pref></li>
<li><pref>aria-valuemin</pref></li>
</ul>
</td>
</tr>
<tr>
<th class="role-inherited-head" scope="row">Inherited States and Properties:</th>
Expand Down Expand Up @@ -6684,7 +6685,6 @@ <h5>Presentational Roles Conflict Resolution</h5>
Default for <pref>aria-orientation</pref> is <code class="default">vertical</code>. <br/>
Default for <pref>aria-valuemin</pref> is <code class="default">0</code>. <br/>
Default for <pref>aria-valuemax</pref> is <code class="default">100</code>. <br/>
Default for <pref>aria-valuenow</pref> is half way between <code class="default">aria-valuemax</code> and <code class="default">aria-valuemin</code>.
</td>
</tr>
</tbody>
Expand Down Expand Up @@ -12408,20 +12408,10 @@ <h3>States and Properties</h3>
<td><pref>aria-orientation</pref></td>
<td><code>vertical</code></td>
</tr>
<tr>
<td><rref>scrollbar</rref></td>
<td><pref>aria-valuemax</pref></td>
<td><code>100</code></td>
</tr>
<tr>
<td><rref>scrollbar</rref></td>
<td><pref>aria-valuemin</pref></td>
<td><code>0</code></td>
</tr>
<tr>
<td><rref>scrollbar</rref></td>
<td><pref>aria-valuenow</pref></td>
<td><code>(aria-valuemax - aria-valuemin) / 2</code></td>
<td>If missing or not a <a href="#valuetype_number">number</a>,<code>(aria-valuemax - aria-valuemin) / 2</code>. If present but less than <code>aria-valuemin</code>, the value of <code>aria-valuemin</code>. If present but greater than <code>aria-valuemax</code>, the value of <code>aria-valuemax</code>.</td>
</tr>
<tr>
<td><rref>slider</rref></td>
Expand Down

0 comments on commit 11bb9fd

Please sign in to comment.