[html5] Validation and <input>
zcorpan at gmail.com
Sat Dec 1 12:31:18 PST 2007
On Sat, 01 Dec 2007 20:49:05 +0100, john <lists1 at caenim.com> wrote:
> I'm a little confused about the results I am getting from the (X)HTML5
> validator. I have a very basic test page setup like so:
> <!doctype html>
> <legend>Search this site</legend>
> <form method="get" action="/search">
> <input name="Search" type="text" value="search">
> Which looks valid as far as I can tell from the Web Forms and HTML5
> specs, yet the validator says:
>> Error: Bad value “text” for attribute “type” on element “input”.
The error message is correct, but very confusing.
<form> needs block-level children, just like in HTML4. However, unlike
HTML4, in HTML5 you can put hidden inputs as direct children of <form>.
Therefore, when the validator finds an <input> as a child of <form>, it
expects type= to be "hidden".
The way to solve this is obviously not to change the type="" but to put
the <input> in a block-level element such as <p>, or in this case nest the
fieldset in the form instead.
More information about the Help