HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
2285WF2: <select> -- the beginnings. Also: typo fixes, fix <input size> definition to make better use of rfc2119 terms, and move .labels in the IDL down to after the CVA stuff, so that it matches the order in the prose.2008-10-06 10:16
@@ -18488,48 +18488,48 @@ interface <dfn>HTMLAudioElement</dfn> : <span>HTMLMediaElement</span> {
   <p>The <dfn
   title="attr-media-loopstart"><code>loopstart</code></dfn> content
   attribute gives the offset into the <span>media resource</span> at
   which playback is to begin when looping a clip. The default value of
   the <code title="attr-media-loopStart">loopstart</code> content
   attribute is the value of the <code
   title="dom-media-start">start</code> DOM attribute.</p>
 
   <p>The <dfn><var>effective loop start</var></dfn> is the smaller of
   the <code title="dom-media-loopStart">loopStart</code> DOM attribute
-  and the end of the <span>media resource</span>.<p>
+  and the end of the <span>media resource</span>.</p>
 
   <p>The <dfn title="attr-media-loopend"><code>loopend</code></dfn>
   content attribute gives an offset into the <span>media
   resource</span> at which playback is to jump back to the <code
   title="attr-media-loopstart">loopstart</code>, when looping the
   clip. The default value of the <code
   title="attr-media-loopEnd">loopend</code> content attribute is the
   value of the <code title="dom-media-end">end</code> DOM
   attribute.</p>
 
   <p>The <dfn><var>effective loop end</var></dfn> is the greater of
   the <code title="dom-media-start">start</code>, <code
   title="dom-media-loopStart">loopStart</code>, and <code
   title="dom-media-loopEnd">loopEnd</code> DOM attributes, except if
   that is greater than the end of the <span>media resource</span>, in
-  which case that's its value.<p>
+  which case that's its value.</p>
 
   <p>The <dfn title="attr-media-end"><code>end</code></dfn> content
   attribute gives an offset into the <span>media resource</span> at
   which playback is to end. The default value is infinity.</p>
 
   <p>The <dfn><var>effective end</var></dfn> is the greater of the
   <code title="dom-media-start">start</code>, <code
   title="dom-media-loopStart">loopStart</code>, and <code
   title="dom-media-loopEnd">end</code> DOM attributes, except if that
   is greater than the end of the <span>media resource</span>, in which
-  case that's its value.<p>
+  case that's its value.</p>
 
   <p>The <code title="attr-media-start">start</code>, <code
   title="attr-media-loopstart">loopstart</code>, <code
   title="attr-media-loopend">loopend</code>, and <code
   title="attr-media-end">end</code> attributes must, if specified,
   contain <span title="value time offset">value time
   offsets</span>. To get the time values they represent, user agents
   must use the <span>rules for parsing time offsets</span>.</p>
 
   <p>The <dfn title="dom-media-start"><code>start</code></dfn>, <dfn
@@ -25476,30 +25476,30 @@ function AddCloud(data, x, y) { ... }</pre>
            attribute DOMString <span title="dom-input-src">src</span>;
            attribute DOMString <span title="dom-input-step">step</span>;
            attribute DOMString <span title="dom-fs-target">target</span>;
            attribute DOMString <span title="dom-input-type">type</span>;
            attribute DOMString <span title="dom-input-defaultValue">defaultValue</span>;
            attribute DOMString <span title="dom-input-value">value</span>;
            attribute DOMTimeStamp <span title="dom-input-valueAsDate">valueAsDate</span>;
            attribute float <span title="dom-input-valueAsNumber">valueAsNumber</span>;
   readonly attribute <span>HTMLOptionElement</span> <span title="dom-input-selectedOption">selectedOption</span>;
 
-  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
-
   void <span title="dom-input-stepUp">stepUp</span>(in int n);
   void <span title="dom-input-stepDown">stepDown</span>(in int n);
 
   readonly attribute boolean <span title="dom-cva-willValidate">willValidate</span>;
   readonly attribute <span>ValidityState</span> <span title="dom-cva-validity">validity</span>;
   readonly attribute DOMString <span title="dom-cva-validationMessage">validationMessage</span>;
   boolean <span title="dom-cva-checkValidatity">checkValidity</span>();
   void <span title="dom-cva-setCustomValidity">setCustomValidity</span>(in DOMString error);
+
+  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>
    </dd> 
   </dl>
 
   <!-- XXX add selectionStart and company -->
 
   <p>The <code>input</code> element represents a typed data field,
   usually with a form control to allow the user to edit the data.</p>
 
   <p>The <dfn title="attr-input-type"><code>type</code></dfn>
@@ -28683,27 +28683,35 @@ function AddCloud(data, x, y) { ... }</pre>
   <p><strong>Constraint validation:</strong> If the <code
   title="attr-input-readonly">readonly</code> attribute is specified
   on an <code>input</code> element, the element is <span>barred from
   constraint validation</span>.</p>
 
 
 
   <h6>The <code title="attr-input-size">size</code> attribute</h6>
 
   <p>The <dfn title="attr-input-size"><code>size</code></dfn>
-  attribute, if specified, must have a value that is a <span>valid
-  non-negative integer</span> greater than zero.</p>
+  attribute gives the number of characters that, in a visual
+  rendering, the user agent is to allow the user to see while editing
+  the element's <span title="concept-fe-value">value</span>.</p>
 
-  <p>The attribute's value gives the number of characters that, in a
-  visual rendering, the user agent should allow the user to see while
-  editing the element's <span
-  title="concept-fe-value">value</span>.</p>
+  <p>The <code title="attr-input-size">size</code> attribute, if
+  specified, must have a value that is a <span>valid non-negative
+  integer</span> greater than zero.</p>
+
+  <p>If the attribute is present, then its value must be parsed using
+  the <span>rules for parsing non-negative integers</span>, and if the
+  result is a number greater than zero, then the user agent should
+  ensure that at least that many characters are visible.</p>
+
+  <p class="XXX">The rendering section will define this in more
+  detail.</p>
 
   <p>The <code title="dom-input-size">size</code> DOM attribute
   <span>limited to only positive non-zero numbers</span>.</p>
 
 
   <h6>The <code title="attr-input-required">required</code> attribute</h6>
 
   <p>The <dfn title="attr-input-required"><code>required</code></dfn>
   attribute is a <span>boolean attribute</span>. When specified, the
   element is <dfn
@@ -29226,27 +29234,27 @@ function AddCloud(data, x, y) { ... }</pre>
            attribute boolean <span title="dom-fe-autofocus">autofocus</span>;
            attribute boolean <span title="dom-fe-disabled">disabled</span>;
            attribute DOMString <span title="dom-fs-enctype">enctype</span>;
   readonly attribute <span>HTMLFormElement</span> <span title="dom-fae-form">form</span>;
            attribute DOMString <span title="dom-fs-method">method</span>;
            attribute DOMString <span title="dom-fe-name">name</span>;
            attribute DOMString <span title="dom-fs-target">target</span>;
            attribute DOMString <span title="dom-button-type">type</span>;
            attribute DOMString <span title="dom-button-value">value</span>;
 
-  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
-
   readonly attribute boolean <span title="dom-cva-willValidate">willValidate</span>;
   readonly attribute <span>ValidityState</span> <span title="dom-cva-validity">validity</span>;
   readonly attribute DOMString <span title="dom-cva-validationMessage">validationMessage</span>;
   boolean <span title="dom-cva-checkValidatity">checkValidity</span>();
   void <span title="dom-cva-setCustomValidity">setCustomValidity</span>(in DOMString error);
+
+  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>
    </dd> 
   </dl>
 
   <p>The <code>button</code> element represents a button. If the
   element is not <span title="concept-fe-disabled">disabled</span>,
   then the user agent should allow the user to activate the
   button.</p>
 
   <p>The <dfn title="attr-button-type"><code>type</code></dfn>
@@ -29378,45 +29386,108 @@ function AddCloud(data, x, y) { ... }</pre>
   readonly attribute DOMString <span title="dom-select-type">type</span>;
 
   readonly attribute <span>HTMLOptionsCollection</span> <span title="dom-select-options">options</span>;
            attribute unsigned long <span title="dom-select-length">length</span>;
   [IndexGetter] <span>HTMLElement</span> <span title="dom-select-XXX9">XXX9</span>(in unsigned long index);
 
   readonly attribute <span>HTMLOptionsCollection</span> <span title="dom-select-selectedOptions">selectedOptions</span>;
            attribute long <span title="dom-select-selectedIndex">selectedIndex</span>;
            attribute DOMString <span title="dom-select-value">value</span>;
 
-  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
-
   void <span title="dom-select-add">add</span>(in <span>HTMLElement</span> element, in <span>HTMLElement</span> before);
   void <span title="dom-select-remove">remove</span>(in long index);
 
   readonly attribute boolean <span title="dom-cva-willValidate">willValidate</span>;
   readonly attribute <span>ValidityState</span> <span title="dom-cva-validity">validity</span>;
   readonly attribute DOMString <span title="dom-cva-validationMessage">validationMessage</span>;
   boolean <span title="dom-cva-checkValidatity">checkValidity</span>();
   void <span title="dom-cva-setCustomValidity">setCustomValidity</span>(in DOMString error);
+
+  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>
    </dd> 
   </dl>
 
-  <p class="XXX">...</p>
+  <p>The <code>select</code> element represents a control for
+  selecting amongst a set of options.</p>
+
+  <p>The <dfn title="attr-select-multiple"><code>multiple</code></dfn>
+  attribute is a <span>boolean attribute</span>. If the attribute is
+  present, then the <code>select</code> element represents a control
+  for selecting zero or more options from the <span
+  title="select-option-list">list of options</span>. If the attribute
+  is absent, then the <code>select</code> element represents a control
+  for selecting a single option from the <span
+  title="select-option-list">list of options</span>.</p>
+
+  <p>The <dfn title="select-option-list">list of options</dfn> for a
+  <code>select</code> element consists of all the <code>option</code>
+  element children of the <code>select</code> element, and all the
+  <code>option</code> element children of all the
+  <code>optgroup</code> element children of the <code>select</code>
+  element, in <span>tree order</span>.</p>
+
+  <p>The <dfn title="attr-select-size"><code>size</code></dfn>
+  attribute gives the number of options to show to the user. The <code
+  title="attr-input-size">size</code> attribute, if specified, must
+  have a value that is a <span>valid non-negative integer</span>
+  greater than zero. If the <code
+  title="attr-select-multiple">multiple</code> attribute is present,
+  then the <code title="attr-input-size">size</code> attribute's
+  default value is 4. If the <code
+  title="attr-select-multiple">multiple</code> attribute is absent,
+  then the <code title="attr-input-size">size</code> attribute's
+  default value is 1.</p>
+
+  <!-- XXX for the rendering section
+  <p>If the <code title="attr-select-multiple">multiple</code>
+  attribute is absent, and either the <code
+  title="attr-input-size">size</code> attribute is also absent or
+  parsing its value using the <span>rules for parsing non-negative
+  integers</span> returns 1, 0, or an error, then the control should
+  be rendered as a drop-down select box. Otherwise, it should be
+  rendered as a list select box.</p>
+  -->
 
   <p>The <code title="attr-fae-form">form</code> attribute is used to
   explicitly associate the <code>select</code> element with its
   <span>form owner</span>. The <code title="attr-fe-name">name</code>
   attribute represents the element's name. The <code
   title="attr-fe-disabled">disabled</code> attribute is used to make
   the control non-interactive and to prevent its value from being
   submitted. The <code title="attr-fe-autofocus">autofocus</code>
   attribute controls focus.</p>
 
+  <p class="XXX">...</p>
+
+  <!-- XXX
+  readonly attribute DOMString <span title="dom-select-type">type</span>;
+
+  readonly attribute <span>HTMLOptionsCollection</span> <span title="dom-select-options">options</span>;
+           attribute unsigned long <span title="dom-select-length">length</span>;
+  [IndexGetter] <span>HTMLElement</span> <span title="dom-select-XXX9">XXX9</span>(in unsigned long index);
+
+  readonly attribute <span>HTMLOptionsCollection</span> <span title="dom-select-selectedOptions">selectedOptions</span>;
+           attribute long <span title="dom-select-selectedIndex">selectedIndex</span>;
+           attribute DOMString <span title="dom-select-value">value</span>;
+
+  void <span title="dom-select-add">add</span>(in <span>HTMLElement</span> element, in <span>HTMLElement</span> before);
+  void <span title="dom-select-remove">remove</span>(in long index);
+  -->
+
+  <p>The <dfn title="dom-select-multiple"><code>multiple</code></dfn>
+  and <dfn title="dom-select-size"><code>size</code></dfn> DOM
+  attributes must <span>reflect</span> the respective content
+  attributes of the same name. The <code
+  title="dom-select-size">size</code> DOM attribute <span>limited to
+  only positive non-zero numbers</span>.</p>
+
   <p>The <code title="dom-cva-willValidate">willValidate</code>, <code
   title="dom-cva-validity">validity</code>, and <code
   title="dom-cva-validationMessage">validationMessage</code>
   attributes, and the <code
   title="dom-cva-checkValidatity">checkValidity()</code> and <code
   title="dom-cva-setCustomValidity">setCustomValidity()</code>
   methods, are part of the <span>constraint validation API</span>. The
   <code title="dom-lfe-labels">labels</code> element provides a list
   of the element's <code>label</code>s.</p>
 
@@ -29560,27 +29631,27 @@ interface <dfn>HTMLOptionElement</dfn> : <span>HTMLElement</span> {
            attribute DOMString <span title="dom-textarea-pattern">pattern</span>;
            attribute boolean <span title="dom-textarea-readOnly">readOnly</span>;
            attribute boolean <span title="dom-textarea-required">required</span>;
            attribute unsigned long <span title="dom-textarea-rows">rows</span>;
            attribute DOMString <span title="dom-textarea-wrap">wrap</span>;
 
   readonly attribute DOMString <span title="dom-textarea-type">type</span>;
            attribute DOMString <span title="dom-textarea-defaultValue">defaultValue</span>;
            attribute DOMString <span title="dom-textarea-value">value</span>;
 
-  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
-
   readonly attribute boolean <span title="dom-cva-willValidate">willValidate</span>;
   readonly attribute <span>ValidityState</span> <span title="dom-cva-validity">validity</span>;
   readonly attribute DOMString <span title="dom-cva-validationMessage">validationMessage</span>;
   boolean <span title="dom-cva-checkValidatity">checkValidity</span>();
   void <span title="dom-cva-setCustomValidity">setCustomValidity</span>(in DOMString error);
+
+  readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>
    </dd> 
   </dl>
 
   <!-- XXX add selectionStart and company -->
 
   <p class="XXX">...</p>
 
   <p>The <code title="attr-fae-form">form</code> attribute is used to
   explicitly associate the <code>textarea</code> element with its

|