HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
2192WF2: <input type=''>. Also, some minor fixes relating to <label>.2008-09-16 20:48
@@ -24310,36 +24310,156 @@ 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>HTMLCollection</span> <span title="dom-lfe-labels">labels</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);
 };</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>
+  attribute controls the data type (and associated control) of the
+  element. It is an <span>enumerated attribute</span>. The following
+  table lists the keywords and states for the attribute &mdash; the
+  keywords in the left column map to the states in the cell in the
+  second column on the same row as the keyword.</p>
+
+  <table>
+   <thead>
+    <tr>
+     <th> Keyword
+     <th> State
+     <th> Data type
+     <th> Control type
+   <tbody>
+    <tr>
+     <td> <dfn title="attr-input-type-text-keyword"><code>text</code></dfn>
+     <td> <span title="attr-input-type-text">Text</span> state
+     <td> Text with no line breaks
+     <td> Text field
+    <tr>
+     <td> <dfn title="attr-input-type-password-keyword"><code>password</code></dfn>
+     <td> <span title="attr-input-type-password">Password</span> state
+     <td> Text with no line breaks (sensitive information)
+     <td> Text field that obscures data entry
+    <tr>
+     <td> <dfn title="attr-input-type-image-keyword"><code>image</code></dfn>
+     <td> <span title="attr-input-type-image">Image Button</span> state
+     <td> A coordinate, relative to a particular image's size, with the extra semantic that it must be the last value selected and initiates form submission
+     <td> Either a clickable image, or a button
+    <tr>
+     <td> <dfn title="attr-input-type-datetime-keyword"><code>datetime</code></dfn>
+     <td> <span title="attr-input-type-datetime">Date and Time</span> state
+     <td> A date and time (year, month, day, hour, minute, second, fractions of a second) with the time zone set to UTC
+     <td> A date and time control
+    <tr>
+     <td> <dfn title="attr-input-type-datetime-local-keyword"><code>datetime-local</code></dfn>
+     <td> <span title="attr-input-type-datetime-local">Local Date and Time</span> state
+     <td> A date and time (year, month, day, hour, minute, second, fractions of a second) with no time zone
+     <td> A date and time control
+    <tr>
+     <td> <dfn title="attr-input-type-date-keyword"><code>date</code></dfn>
+     <td> <span title="attr-input-type-date">Date</span> state
+     <td> A date (year, month, day) with no time zone
+     <td> A date control
+    <tr>
+     <td> <dfn title="attr-input-type-month-keyword"><code>month</code></dfn>
+     <td> <span title="attr-input-type-month">Month</span> state
+     <td> A date consisting of a year and a month with no time zone
+     <td> A month control
+    <tr>
+     <td> <dfn title="attr-input-type-week-keyword"><code>week</code></dfn>
+     <td> <span title="attr-input-type-week">Week</span> state
+     <td> A date consisting of a year and a week number with no time zone
+     <td> A week control
+    <tr>
+     <td> <dfn title="attr-input-type-time-keyword"><code>time</code></dfn>
+     <td> <span title="attr-input-type-time">Time</span> state
+     <td> A time (hour, minute, seconds, fractional seconds) with no time zone
+     <td> A time control
+    <tr>
+     <td> <dfn title="attr-input-type-number-keyword"><code>number</code></dfn>
+     <td> <span title="attr-input-type-number">Number</span> state
+     <td> A numerical value
+     <td> A text field or spinner control
+    <tr>
+     <td> <dfn title="attr-input-type-range-keyword"><code>range</code></dfn>
+     <td> <span title="attr-input-type-range">Range</span> state
+     <td> A numerical value, with the extra semantic that the exact value is not important
+     <td> A slider control or similar
+    <tr>
+     <td> <dfn title="attr-input-type-email-keyword"><code>email</code></dfn>
+     <td> <span title="attr-input-type-email">E-mail</span> state
+     <td> An e-mail address
+     <td> A text field
+    <tr>
+     <td> <dfn title="attr-input-type-url-keyword"><code>url</code></dfn>
+     <td> <span title="attr-input-type-url">URL</span> state
+     <td> An IRI
+     <td> A text field
+    <tr>
+     <td> <dfn title="attr-input-type-checkbox-keyword"><code>checkbox</code></dfn>
+     <td> <span title="attr-input-type-checkbox">Checkbox</span> state
+     <td> A set of zero or more values from a predefined list
+     <td> A checkbox
+    <tr>
+     <td> <dfn title="attr-input-type-radio-keyword"><code>radio</code></dfn>
+     <td> <span title="attr-input-type-radio">Radio Button</span> state
+     <td> An enumerated value
+     <td> A radio button
+    <tr>
+     <td> <dfn title="attr-input-type-file-keyword"><code>file</code></dfn>
+     <td> <span title="attr-input-type-file">File</span> state
+     <td> Zero or more files each with a MIME type and optionally a file name
+     <td> A label and a button
+    <tr>
+     <td> <dfn title="attr-input-type-hidden-keyword"><code>hidden</code></dfn>
+     <td> <span title="attr-input-type-hidden">Hidden</span> state
+     <td> An arbitrary string
+     <td> n/a
+    <tr>
+     <td> <dfn title="attr-input-type-submit-keyword"><code>submit</code></dfn>
+     <td> <span title="attr-input-type-submit">Submit Button</span> state
+     <td> An enumerated value, with the extra semantic that it must be the last value selected and initiates form submission
+     <td> A button
+    <tr>
+     <td> <dfn title="attr-input-type-reset-keyword"><code>reset</code></dfn>
+     <td> <span title="attr-input-type-reset">Reset Button</span> state
+     <td> n/a
+     <td> A button
+    <tr>
+     <td> <dfn title="attr-input-type-button-keyword"><code>button</code></dfn>
+     <td> <span title="attr-input-type-button">Button</span> state
+     <td> n/a
+     <td> A button
+  </table>
+
   <p class="big-issue">...</p>
 
   <p>The <code title="attr-fae-form">form</code> attribute is used to
   explicitly associate the <code>input</code> element with its
   <span>form owner</span>. The <code title="attr-fe-name">name</code>
   attribute represents the element's name.</p>
 
   <p class="big-issue">... <dfn title="concept-input-checked">checked</dfn></p>
 
   <p class="big-issue">... image: <dfn title="concept-input-type-image-coordinate">selected coordinate</dfn></p>
@@ -24390,21 +24510,21 @@ rel="" on submit buttons?
            attribute boolean <span title="dom-button-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>HTMLCollection</span> <span title="dom-lfe-labels">labels</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);
 };</pre>
    </dd> 
   </dl>
 
@@ -24457,21 +24577,21 @@ rel="" on submit buttons?
   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>HTMLCollection</span> <span title="dom-lfe-labels">labels</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);
 };</pre>
@@ -24632,21 +24752,21 @@ 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>HTMLCollection</span> <span title="dom-lfe-labels">labels</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);
 };</pre>
    </dd> 
   </dl>
 
@@ -29646,28 +29766,30 @@ menu li:not(:first-child)::before { content: ' | '; }</pre>
   <p>The <span title="command-facet-Label">Label</span> of the command
   depends on the Type of the command:</p>
 
   <p>If the <span title="command-facet-Type">Type</span> is "command",
   then it is the string given by the <code
   title="attr-input-value">value</code> attribute, if any, and a
   <span>UA-dependent value</span><!-- XXX xref--> that the UA uses to
   label the button itself if the attribute is absent.</p>
 
   <p>Otherwise, the <span title="command-facet-Type">Type</span> is
-  "radio" or "checkbox". If the element has a <code>label</code>
-  element associated with it, the <code>textContent</code> of the
-  first such element is the <span
+  "radio" or "checkbox". If the element is a <span>labeled
+  control</span>, the <code title="">textContent</code> of the first
+  <code>label</code> element in <span>tree order</span> whose
+  <span>labeled control</span> is the element in question is the <span
   title="command-facet-Label">Label</span> (in DOM terms, this the
-  string given by
-  <code><var title="">element</var>.labels[0].textContent</code>).  Otherwise,
-  the value of the <code>value</code> attribute, if present, is the
-  <span title="command-facet-Label">Label</span>. Otherwise, the <span
+  string given by <code><var
+  title="">element</var>.labels[0].textContent</code>).  Otherwise,
+  the value of the <code title="attr-input-value">value</code>
+  attribute, if present, is the <span
+  title="command-facet-Label">Label</span>. Otherwise, the <span
   title="command-facet-Label">Label</span> is the empty string.</p>
 
   <p>The <span title="command-facet-Hint">Hint</span> of the command
   is the value of the <code title="attr-title">title</code> attribute
   of the <code>input</code> element. If the attribute is not present, the
   <span title="command-facet-Hint">Hint</span> is the empty
   string.</p>
 
   <p>There is no <span title="command-facet-Icon">Icon</span> for the
   command.</p>
@@ -49906,20 +50028,22 @@ interface <dfn>MessageChannel</dfn> {
     title="concept-form-association">associate</span> the newly
     created <code>input</code> element with the <code>form</code>
     element pointed to by the <span><code title="">form</code> element
     pointer</span>.</p>
 
    </dd>
 
    <dt>A start tag whose tag name is "label"</dt>
    <dd>
 
+    <!-- XXX should this close open <label> elements? -->
+
     <p><span>Reconstruct the active formatting elements</span>, if
     any.</p>
 
     <p><span>Insert an HTML element</span> for the token.</p>
 
     <p>If the <span><code title="">form</code> element pointer</span>
     is not null and the newly created element doesn't have a <code
     title="attr-fae-form">form</code> attribute, then <span
     title="concept-form-association">associate</span> the newly
     created <code>label</code> element with the <code>form</code>

|