在 XHTML 1.1 中:元素“input”不能嵌套在元素“form”内。为什么?

2023-11-23

下面的代码在 XHTML 1.1 严格模式下是被禁止的:

<form method="post" action="index">
    <input id="_method" name="_method" type="hidden" value="" />
</form>

如果你希望它有效,那么你需要用 div (或 p 等)将其包裹起来,如下所示:

<form method="post" action="index">
    <div>
         <input id="_method" name="_method" type="hidden" value="" />
    </div>
</form>

这有什么意义呢?


根据W3C and 这个网站 the <form>XHTML 1.1 中的元素只能包含块级元素并且<fieldset>.


As for why...我相信原因是form可能只包含块级元素,因为它本身不被视为元素,而是其他元素的包装器。有some 讨论几年前,我在 w3c 的邮件列表中找到了相关内容,但没有任何内容真正回答了这个问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 XHTML 1.1 中:元素“input”不能嵌套在元素“form”内。为什么? 的相关文章