【问题标题】:In XHTML 1.1: element 'input' cannot be nested within element 'form'. Why?在 XHTML 1.1 中:元素 'input' 不能嵌套在元素 'form' 中。为什么?
【发布时间】:2010-01-28 22:01:29
【问题描述】:

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

这有什么意义?

【问题讨论】:

  • 标准就是标准。如果您有实际问题,请编辑您的问题以提出一个问题。为什么对字段集的要求会给您带来困扰?
  • HXML 1.1 只有一种模式:严格。可以贴一下代码吗?我无法理解这个问题。在 XHTML 中 必须在
    .
  • @Tae form->fieldset->输入,不是吗?
  • 是的.. 那是因为你需要一个字段集

标签: xhtml


【解决方案1】:

根据W3Cthis site,XHTML 1.1 中的&lt;form&gt; 元素只能包含块级元素和&lt;fieldset&gt;


至于为什么 ...我认为form可能只包含块级元素的原因是因为它本身不被认为是一个元素,而是其他元素的包装器.几年前,我能够在 w3c 的邮件列表中找到 some discussion ,但没有任何内容真正回答了这个问题。

【讨论】:

    【解决方案2】:

    欢迎来到古怪的标准世界。有时,编写 XHTML 标准的人似乎认为该语言如果有更多规则会更好。

    HTML5 现在在这里。

    【讨论】:

    • 但是每个人都喜欢 XHTML。有很多规则...规则让世界更美好...没有规则 === 没有 web 3.0 :)
    • “但每个人都喜欢 XHTML”——非常正确,肯定没有人希望制定 XHTML 2.0 规范。 “规则让世界更美好……”——有用的规则。如果 XHTML 有一个规则,即文档只能在星期二包含 &lt;em&gt; 标记,那不会让世界变得更好。 “没有规则 === 没有 web 3.0 :)”——嗯?
    猜你喜欢
    • 2012-05-16
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    • 1970-01-01
    • 2017-09-08
    相关资源
    最近更新 更多