元素被推出了锚

时间:2016-04-28 08:36:53

标签: html css

我发生了这件奇怪的事情。

我有一个菜单,我尝试创建一个大型菜单。

我在锚标签中添加一个ul来创建大型菜单,但它被推出了。谁知道为什么?

HTML:

<ul class="header_menu">
<li>
    <a href="#">
        Menu 1
        <ul class="sub_menu">
            <li><a href="#">Submenu 1</a></li>
        </ul>
    </a>
</li>

并使用查看源检查此html图片。

image using view source

ul sub_menu被推出锚点并放置在它附近,而不是作为锚标记的父级。

有什么想法吗?

编辑:

正如昆汀所说,并且根据w3c“嵌套链接是非法的”。 这里有更详细的解释: https://www.w3.org/TR/html401/struct/links.html#h-12.2.2

1 个答案:

答案 0 :(得分:1)

您的HTML无效。

请参阅The a element

  

内容模型:透明,但必须没有互动内容后代。

不能将链接作为另一个链接的后代。

如果删除嵌套链接,问题就会消失:

enter image description here

你可能想要&#34;菜单1&#34;成为一个链接和&#34;子菜单&#34;成为一个不同的链接。因此,在嵌套列表

之前结束您的第一个链接