8

使用 w3c 的验证器验证我的页面时出现此错误。 使用 w3c 的验证器验证我的页面时出现此错误。

来源:

<form action="form.php" method="post">
<input type="text"/>
</form>

有人可以告诉我为什么我可能会收到此错误吗?提前致谢!

4

1 回答 1

17

这个答案适用于 XHTML,而不是 HTML5。

form 和 body 元素只接受块级子元素<form action="/"> <input type="submit"> </form>……会产生错误:

文档类型在这里不允许元素“输入”;缺少“p”、“h1”、“h2”、“h3”、“h4”、“h5”、“h6”、“div”、“pre”、“address”、“fieldset”、“ins”之一, "del" 开始标签。

在 (X)HTML 的 Strict 变体中,表单元素可能只有块元素作为其子元素,但表单控件(例如输入元素)是内联元素。解决方案是选择一个具有适当语义的块元素,其中可能包含内联元素;有用的是,验证器会生成一个可以帮助您缩小范围的列表。

对于表单,适当的元素通常是 fieldset 或普通的 div。

来源-Dorward Online

所以做类似的事情

<form action="form.php" method="post">
    <fieldset>
        <input type="text"/>
    </fieldset>
</form>

将解决您的问题。

于 2011-05-03T06:45:48.423 回答