我正在尝试创建一个包含图像的锚点标签的figure标签。我想知道这种结构是否合法。以下是展示我想要实现的代码。
<figure>
<a href="/my-picture">
<img src="img/picture.jpg" alt="My picture">
</a>
<figcaption>
My picture
</figcaption>
</figure>
验证器表示它具有正确的结构,所以是的。
至于语义,我没有看到任何问题,但请记住,在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>
<a>
元素是“透明”的,但它不能包含交互式元素。因此,您可以将几乎任何非交互式内容包装在<a>
中,并且它将是有效的。(显然,<a>
不能是<ul>
或<table>
等元素的直接子元素。) - Mikko Rantalainen
figcaption
。但是,您可以将锚点放置在figcaption
中。有效的替代方法如下所述,您可以使用锚点包装整个figure
。 - Avatar