一个figure标签是否可以包含一个用于包裹图片的锚点标签?

23

我正在尝试创建一个包含图像的锚点标签的figure标签。我想知道这种结构是否合法。以下是展示我想要实现的代码。

<figure>
   <a href="/my-picture">
       <img src="img/picture.jpg" alt="My picture">
   </a>
   <figcaption>
       My picture
   </figcaption>
</figure>

好的,谢谢。有什么地方可以解决这些疑问吗?@Rasel - armellini13
您可以在http://validator.nu验证您的标记。 - BoltClock
请注意:您不能单独使用锚点包装 figcaption。但是,您可以将锚点放置在 figcaption 中。有效的替代方法如下所述,您可以使用锚点包装整个 figure - Avatar
1个回答

25

验证器表示它具有正确的结构,所以是的。

至于语义,我没有看到任何问题,但请记住,在HTML5中,您可以将整个figure包装在链接中,这可能很有用,因为在大多数情况下,您还想包装描述。

我使用了这个来验证:

<!DOCTYPE html>
<html>
  <head>
    <title>a</title>
  </head>
  <body>
    <figure>
      <a href="/my-picture">
        <img src="img/picture.jpg" alt="My picture">
      </a>
      <figcaption>
        My picture
      </figcaption>
    </figure>
  </body>
</html>

当前的WHATWG规范指出,<a>元素是“透明”的,但它不能包含交互式元素。因此,您可以将几乎任何非交互式内容包装在<a>中,并且它将是有效的。(显然,<a>不能是<ul><table>等元素的直接子元素。) - Mikko Rantalainen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接