【问题标题】:Is an anchor in nested list invalid or is this a firebug error?嵌套列表中的锚点是无效的还是萤火虫错误?
【发布时间】:2010-10-10 17:55:53
【问题描述】:

下面的 HTML 是否有问题,或者我只是遇到了 Firebug 错误?当我查看 firebug 中的第一个列表元素时,您会发现 firebug 很难正确识别锚点;但是,第二个(外部)列表元素没有问题。如果我从第一个列表元素中删除嵌套列表,那么问题就会消失。同样,如果我删除外部列表,问题就会消失。因此,在嵌套列表周围放置锚点似乎存在问题。

我尝试用 div 甚至跨度替换锚点,并且萤火虫不会抱怨,所以这似乎是特定于锚点的。我也尝试了各种文档类型,但没有成功。

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  </head>
  <body>
    <ul>
      <li>
        <a href="http://whatever" style="display:block">
          <p>some text</p>
          <ul>
            <li>a list entry</li>
          </ul>
        </a>
      </li>
      <li>
        <a href="http://whatever">
           <p>more text</p>
        </a>
       </li>
    </ul>
  </body>
</html>

【问题讨论】:

    标签: html firebug


    【解决方案1】:

    a 元素只允许 inline-level elements 作为子元素。所以p元素和ul元素是不允许的。

    【讨论】:

    • 我想知道这是否是问题所在。如果是,则存在一些不一致(如果我将锚点替换为跨度,为什么没有问题?如果我将内容包装在显示设置为内联的 div 中,为什么仍然有问题?)
    • @darasd span 是一个内联元素,因此设置为 display:inline 的 div 也是如此。
    • @Bart 完全正确。在第一种情况下(用 span 替换锚点),我有一个包含块元素的内联元素,但没有问题。其次(用内联div包裹锚的内容),我有一个包含内联元素的锚,但问题仍然存在。
    • 另外,这并不能解释为什么如果我删除外部(父)列表,问题就会消失。
    猜你喜欢
    • 2011-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多