Validator,tag:“结束标记违反嵌套规则”

时间:2013-03-23 20:24:40

标签: html w3c-validation

我在w3验证器中运行了我的网站并收到了此错误...

第16行,第4列:结束标记a违反了嵌套规则。

</a>

有什么问题?我努力写好标记,只有2个错误,我修复了另一个错误,但是这个我无法解决...

3 个答案:

答案 0 :(得分:13)

这意味着您的标签不匹配。

例如,以下代码将抛出所描述的错误:

<a href=''><b>Some text</a></b>

鉴于你指出你曾试图写出好的标记并且你没有任何其他错误,我想你已经知道了,所以可能导致它。

我的猜测是,您的<a>代码中有一个未正确关闭的代码。

例如,在我上面给出的示例中,您可能在正确的位置有结束</b>标记,但可能有一个错误,它会阻止它被识别为结束标记 - 例如可能错过了削减?这将是最合理的,也很容易错过。

或者另一个例子 - 也许你有这样的代码:

<a href=''><img src='pic.jpg'></a>

在HTML文档中,上述代码完全有效。但是,如果您将<DOCTYPE>指定为xhtml则无效,因为在xhtml中,所有标记都需要关闭,而上面的<img>不是。它需要一个关闭的斜杠,如下所示:

<a href=''><img src='pic.jpg' /></a>

我的猜测是你的错误是这样的。

你没有向我们展示产生错误的代码,所以我在黑暗中拍摄了一下,但这是我的猜测。

我还要说虽然W3C的验证器是一个很好的资源,但是如果你使用一个不错的IDE编写代码,代码编辑器应该在你编写代码时突出显示这样的语法错误。这样可以很容易地看出问题所在。甚至某些浏览器的查看源功能也会显示语法突出显示,这可能会显示问题。

答案 1 :(得分:0)

有点晚但对其他人有用!! 在&#34;嵌套规则&#34;你不能打开一个标签,然后在其中打开另一个标签,但在第一个标签之外将其关闭!!
哈哈哈声音不太清楚!一个例子胜过千言万语,所以:

这会给你一个嵌套规则错误!!

...blabla <em><b>blibloblu</em></b> blablabla....

虽然这是正确的!!

...blabla <em><b>blibloblu</b></em> blablabla....

希望这会有所帮助!!

答案 2 :(得分:-2)

如果可能,请分享您的代码。我认为你在标签下使用标签。 你必须使用单个标签。

<a href="">
    <ul>
        <li><a href="">A</a></li>
        <li><a href="">B</a></li>
    </ul>
</a>