xhtml - 在 XHTML 1.1 : element 'input' cannot be nested within element 'form' . 为什么?

标签 xhtml

下面的代码在 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>

这有什么意义呢?

最佳答案

根据W3Cthis site <form> XHTML 1.1 中的元素可能只包含块级元素和 <fieldset> .

至于为什么...我相信原因是form可能只包含块级元素是因为它本身不被视为元素,而是其他元素的包装器。有 some discussion几年前在 w3c 的邮件列表中,我能够挖掘到这一点 - 但实际上没有回答这个问题。

关于xhtml - 在 XHTML 1.1 : element 'input' cannot be nested within element 'form' . 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2158303/

相关文章:

html - xhtml 自闭 anchor 元素 <a/> 允许吗?

xhtml - 为什么我不能在 div 标签上使用 inline-block?

xml - 使用 XSLT 转换的 XHTML 代码时出错

xhtml - Paypal 支付和自动数字媒体下载

jquery - 如何将括号 (a) 添加到有序列表?在所有浏览器中兼容

css - 如何使用 CSS 将框样式应用于 xhtml 文档?

xhtml - 我看过很多浏览器的 CSS 兼容性列表,有 X/HTML 标签的列表吗?还是所有浏览器都支持所有标签?

parsing - 如何在 Clojure 中懒惰地解析大 XHTML 文件?

jquery - IE8 支持 HTML 自定义字符实体代码 "&#x25B6;"(阻止右箭头)

java - 带有嵌入式命令链接的 Primefaces 数据表