您好我最近开始了一个课程,我已经能够解决所有其他验证错误,但我不明白为什么这不会用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
他们都很相似。
答案 0 :(得分:2)
如果你想知道为什么它没有用w3c验证,我建议你访问这个网站:
他们非常清楚为什么这是错的。此外,看到他们的报告,令我惊讶的是浏览器可以完全理解HTML = p
编辑您留下的错误是因为在HTML中您应该用文本和输入字段包含块级元素,例如div,p等。
答案 1 :(得分:1)
break是一个自我结束标记,即您可以只使用<br></br>
而不是<br/>
答案 2 :(得分:0)
您没有发布文档类型,因此我将假设HTML5。
更新
请参阅以下有关上述各点的链接:
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/
答案 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>
在许多现有用户代理中提供了不确定的结果。“