使用W3C进行验证时出现以下错误。
“错误:在此上下文中,元素p不允许作为元素dl的子元素。(从此子树中抑制更多错误。)”。
有谁知道如何解决这个问题?
<dl>
<dt>Comments</dt>
<dd class="auto">
<textarea name="cus-other-info" cols="45" rows="5" id="cus-other-info-id"></textarea>
</dd>
<p class="cap">ReCAPTCHA entry is for testing whether you are a human visitor and to prevent automated spam submissions.</p>
<dd class="auto recaptcha">
<div class="recaptcha-item">
<script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=6LfaXscSAAAAAMcN5Mfvza9CyYfV7K5__BbQiPBN"></script>
<noscript>
<iframe src="http://www.google.com/recaptcha/api/noscript?k=6LfaXscSAAAAAMcN5Mfvza9CyYfV7K5__BbQiPBN" height="300" width="500" frameborder="0"></iframe><br/>
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
</noscript> </div>
</dd>
<p><sup class="required">*</sup> = Required Fields</p>
<dd class="auto recaptcha">
<div class="submit-item">
<input type="button" class="reset-but" value="Reset" onclick="clearContForm();" />
<input type="button" class="submit-but" value="Submit" onclick="formSubmit();" />
</div>
</dd>
</dl>
答案 0 :(得分:5)
来自相应的MDN docu:
允许的内容零个或多个
<dt>
元素,每个元素后跟一个或多个元素。
您的<p>
代码未包含<dl>
或<dt>
代码。如果您更改此设置,您的代码将会验证。
此外,我建议使用标签,以满足他们的需求。再次引用MDN:
HTML
<dl>
元素(或HTML描述列表元素)包含条款和说明对的列表。此元素的常见用途是实现词汇表或显示元数据(键值对列表)。
从上面的代码中,我假设您只是将其用于布局和/或样式目的。
答案 1 :(得分:2)
<p><sup class="required">*</sup> = Required Fields</p>
<dd class="auto recaptcha">
这个p不在dd里面。要么将其移到dd内部,要么关闭之前的dl,输出此p并打开新的dl。同样适用于
<p class="cap">ReCAPTCHA entry is for testing whether you are a human visitor and to prevent automated spam submissions.</p>