Skip to content
42 changes: 20 additions & 22 deletions source
Original file line number Diff line number Diff line change
Expand Up @@ -54088,11 +54088,10 @@ interface <dfn interface>HTMLSelectElement</dfn> : <span>HTMLElement</span> {
a value before submitting the form.</p>

<p>If a <code>select</code> element has a <code data-x="attr-select-required">required</code>
attribute specified, does not have a <code data-x="attr-select-multiple">multiple</code> attribute
specified, and has a <span data-x="concept-select-size">display size</span> of 1; and if the <span
data-x="concept-option-value">value</span> of the first <code>option</code> element in the
<code>select</code> element's <span data-x="concept-select-option-list">list of options</span> (if
any) is the empty string, and that <code>option</code> element's parent node is the
attribute specified, and has a <span data-x="concept-select-size">display size</span> of 1; and if
the <span data-x="concept-option-value">value</span> of the first <code>option</code> element in
the <code>select</code> element's <span data-x="concept-select-option-list">list of options</span>
(if any) is the empty string, and that <code>option</code> element's parent node is the
<code>select</code> element (and not an <code>optgroup</code> element), then that
<code>option</code> is the <code>select</code> element's <dfn>placeholder label option</dfn>.</p>

Expand Down Expand Up @@ -139338,12 +139337,9 @@ progress { appearance: auto; }</code></pre>
<p>A <code>select</code> element is either a <dfn export for="select">list box</dfn> or a <dfn
export for="select">drop-down box</dfn>, depending on its attributes.</p>

<p>A <code>select</code> element whose <code data-x="attr-select-multiple">multiple</code>
attribute is present is expected to render as a multi-select <span>list box</span>.</p>

<p>A <code>select</code> element whose <code data-x="attr-select-multiple">multiple</code>
attribute is absent, and whose <span data-x="concept-select-size">display size</span> is greater
than 1, is expected to render as a single-select <span>list box</span>.</p>
<p>A <code>select</code> element whose <span data-x="concept-select-size">display size</span> is
greater than 1 is expected to render as a <span>list box</span>. Otherwise, the
<code>select</code> is expected to render as a <span>drop-down box</span>.</p>

<p>When the element renders as a <span>list box</span>, it is a <span>devolvable widget</span>
expected to render as an <span>'inline-block'</span> box. The <span>inline size</span> of its
Expand All @@ -139369,16 +139365,14 @@ progress { appearance: auto; }</code></pre>
</li>
</ol>

<p>A <code>select</code> element whose <code data-x="attr-select-multiple">multiple</code>
attribute is absent, and whose <span data-x="concept-select-size">display size</span> is 1, is
expected to render as an <span>'inline-block'</span> one-line <span>drop-down box</span>.
The <span>inline size</span> of its <span>intrinsic size</span> is the
<span>width of the <code>select</code>'s labels</span>. If the <span>'field-sizing'</span>
property on the element has a <span>computed value</span> of
<span data-x="field-sizing-content">'content'</span>, the <span>inline size</span> of the
<span>intrinsic size</span> depends on the shown text. The shown text is typically the label of
an <code>option</code> of which <span data-x="concept-option-selectedness">selectedness</span> is
set to true.</p>
<p>A <code>select</code> element which is being rendered as a <span>drop-down box</span> is
expected to render as an <span>'inline-block'</span>. The <span>inline size</span> of its
<span>intrinsic size</span> is the <span>width of the <code>select</code>'s labels</span>. If the
<span>'field-sizing'</span> property on the element has a <span>computed value</span> of <span
data-x="field-sizing-content">'content'</span>, the <span>inline size</span> of the
<span>intrinsic size</span> depends on the shown text. The shown text is typically the label of an
<code>option</code> of which <span data-x="concept-option-selectedness">selectedness</span> is set
to true.</p>

<p>When the element renders as a <span>drop-down box</span>, it is a <span>devolvable
widget</span>. Its appearance in the devolved state, as well as its appearance when the
Expand Down Expand Up @@ -139407,7 +139401,11 @@ progress { appearance: auto; }</code></pre>
<p>The <dfn>width of the <code>select</code>'s labels</dfn> is the wider of the width necessary to
render the widest <code>optgroup</code>, and the width necessary to render the widest
<code>option</code> element in the element's <span data-x="concept-select-option-list">list of
options</span> (including its indent, if any).</p>
options</span> (including its indent, if any). If the <code>select</code> has the <code
data-x="attr-select-multiple">multiple</code> attribute and is being rendered as a
<span>drop-down box</span>, then the width should also be wide enough to accomodate the text
rendered in the <code>select</code>'s button with any combination of <code>option</code>s
selected.</p>

<p>If a <code>select</code> element contains a <span>placeholder label option</span>, the user
agent is expected to render that <code>option</code> in a manner that conveys that it is a label,
Expand Down