8

当我在 HTML5 中制作图片库时,它应该有任何语义标签,比如sectionor article,还是只是一个div?

4

3 回答 3

11

这取决于图片库的上下文。

如果画廊与主要内容相关,则将其作为主要内容中的内容是有意义的section

article当其中的内容本身有意义时,应使用该标签,例如个别博客文章。article当需要联合内容(例如 RSS 提要)时,使用标签标记的内容也很有意义。为了解释最后一点,W3C 解释说

当专门与要在联合中重新分发的内容一起使用时,article 元素的用途类似于 Atom 中的 entry 元素。

div标签用于元素的通用分组。如果任何其他标签不适合此目的,则应使用它,并且出于样式或脚本目的需要分组。根据W3C 的建议

强烈建议作者将 div 元素视为不得已的元素,因为当没有其他元素适合时。使用更合适的元素而不是 div 元素可以提高读者的可访问性和作者的可维护性。

回到您的问题,如果图片库与您的内容相关(例如博客文章中的图片库),我会article为整个博客文章提供一个section图片库。有些人可能会争辩说,如果画廊没有标题,它不应该是 a section,因此应该标记为div。然而,W3C 提供了一种非常好的方式来思考其网站上的部分(抱歉,不能发布超过 2 个链接少于 10 个代表点!):

一般规则是,只有当元素的内容明确地列在文档大纲中时,section 元素才是合适的。

如果您考虑一下,在文章的大纲(例如,博客文章)中列出画廊是很有意义的。如果文章有特定的介绍性文字,甚至可以在文章的大纲中列出。在概念上将大纲视为文章的一种目录,列出其各个部分。

就像我之前说的,这真的取决于上下文。

编辑:

关于画廊本身的图像figure,按照 Romin 的建议,将它们放在里面是有意义的。回答你的评论:

thanx 但我不认为这里是正确的,因为他们说它“可以从文档的主要流程中移开,而不会影响文档的含义。” 所以它适用于文本中的图像,如果我从图库中删除图像会影响它的含义

W3C 真正推荐的是:

元素figure(主要内容,例如页边、专用页或附录。

换句话说,要问的问题是是否可以将图片库从主要内容(即博客文章内容或文本)中移出,而不影响文档的流动。图片库本身实际上可以从文档的主要内容中移开,例如侧边栏,并且其位置/顺序的更改不会影响内容的解释方式。如果它的位置确实有影响,那么figure在这种特定情况下是不合适的。

总而言之,如果内容(图片库)对文档很重要,但它在内容流中的位置不重要(即它可以在没有太大影响的情况下移动),请使用figure. 如果它的位置很重要,请使用其他标签。如果它不重要,请aside改用。

于 2013-04-26T13:12:41.640 回答
1

你可以使用 asection如果它有意义,或者aside如果它有意义。否则使用div.

Gallery 没有语义标签,例如audioor video,因此您可能需要使用div.

直到Web Components被释放:)

于 2012-09-04T09:52:23.583 回答
-1

如果您使用的是 HTML5,则建议使用语义标签,并且应该是前进的方向,而不是使用div.

事实上,画廊甚至可以很好地映射到语义标签。例如,一个部分可以包含文章列表,即单独的图像。Anaside可以提供有关特定图像的更多信息等。

一篇很好的文章展示了如何使用figureandfigcaption在这里:http ://html5doctor.com/the-figure-figcaption-elements/

于 2012-09-04T10:13:22.113 回答