为什么这个HTML表格无效?

时间:2012-05-10 21:37:36

标签: html forms validation

您好我最近开始了一个课程,我已经能够解决所有其他验证错误,但我不明白为什么这不会用w3验证?

<div id="conform">
<form method="post" action="" id="form1">
 Name:  <input type="text" name="first_name" /><br></br>
Subject: <input type="text" name="department" id="department"/><br></br>
    Department:
     Sales  <input type="radio" name="red" id="red"/>
     Support    <input type="radio" name="amber" id="amber"/>
     Other  <input type="radio" name="red" id="green"/><br></br>
     Content:   <textarea name="details" id="messagedetails" cols="30">
     </textarea><br></br>
     <input type="submit"  value="Submit"/>
</form>
</div>

如果有人可以向我解释一下..谢谢

嗨,我应该补充一下,这些是我得到的主要错误; http://puu.sh/u1Oo

他们都很相似。

7 个答案:

答案 0 :(得分:2)

如果你想知道为什么它没有用w3c验证,我建议你访问这个网站:

http://validator.w3.org/check

他们非常清楚为什么这是错的。此外,看到他们的报告,令我惊讶的是浏览器可以完全理解HTML = p

编辑您留下的错误是因为在HTML中您应该用文本和输入字段包含块级元素,例如div,p等。

答案 1 :(得分:1)

break是一个自我结束标记,即您可以只使用<br></br>而不是<br/>

答案 2 :(得分:0)

您没有发布文档类型,因此我将假设HTML5。

  1. 缺少语义标记,例如元信息和必需属性。
  2. 没有结果的地方(如果这是遗留的回复,可能不适用)
  3. 见原因1和2
  4. 更新

    请参阅以下有关上述各点的链接:

    http://www.html5rocks.com/en/tutorials/forms/html5forms/

    http://www.w3schools.com/html5/html5_form_attributes.asp

    http://www.w3schools.com/html5/html5_reference.asp

    http://net.tutsplus.com/tutorials/html-css-techniques/how-to-build-cross-browser-html5-forms/

    http://www.video2brain.com/en/videos-13589.htm

    https://developer.mozilla.org/en/HTML/Forms_in_HTML

答案 3 :(得分:0)

@Keith说,用<br/>代替<br></br>。此外,form[action]不能为空;即使你不使用它(即如果你拦截JS的提交),你需要在那里有东西。通常是"#"

答案 4 :(得分:0)

你的单选按钮应该具有相同的名称

答案 5 :(得分:0)

除了上面列出的其他问题之外,这是我从验证器看到的

  

元素表单上属性操作的错误值:必须为非空。    IRI参考语法:任意   URL。例如:/ hello,#scanvas或http://example.org/。人物   应该在NFC中表示,空格应该作为%20进行转义。

答案 6 :(得分:0)

Validity is very relative:这意味着符合称为文档类型定义(DTD)的形式化语法定义,至少在包含XHTML的经典HTML中(HTML5草稿有自己的有效性概念)。

您的代码段主要对应的已发布的DTD是XHTML 1.0 Transitional。使用它,验证器报告的唯一错误就是这个(而且不言自明):

未指定必需属性“行”

 Content:   <textarea name="details" id="messagedetails" cols="30">

这并不意味着标记会另外正常。有效性是一种正式的东西,并不意味着甚至是正确性,更不是质量。首先,使用<br></br>虽然在XHTML中正式有效,却违反了XHTML 1.0规范的着名Appendix C

“C.2。空元素

在尾随/和&gt;之前加一个空格空元素,例如<br /><hr /><img src="karen.jpg" alt="Karen" />。此外,对空元素使用最小化标记语法,例如<br />,因为XML允许的替代语法<br></br>在许多现有用户代理中提供了不确定的结果。“