figure和figcaption是一对经常被一起使用的语义化标签。如果你还没有看过规范中的定义,现在有机会在你的项目中使用它们了。如果你不知道怎么用,下面是关于如何正确使用它们的一些提示。

figure元素经常用于image:

<figure>
<img src="dog.jpg" alt="Maltese Terrier">
</figure>

figure元素表示内容的自包含单元。这个含义是,如果你把元素无论是移出文档或移动到文档的底部,它都不会影响文档的意思。

尽管如此,还是需要记住一点,并不是所有的image都是一个figure.

figure元素包含多个image

如果文档中多个img标签是相互关联的,可以把它们放到一个figure中。

<figure>
<img src="dog1.jpg" alt="Maltese Terrier">
<img src="dog2.jpg" alt="Black Labrador">
<img src="dog3.jpg" alt="Golden Retriever">
</figure>

其它元素也可以应用figure标签

figure元素并不局限于在image上使用,你也可以做类似这些事:

  • 代码块
  • 视频
  • 音频剪辑
  • 广告

下面是一个使用figure来表示代码块的例子

<figure>
<pre>
<code>
p {
color: #333;
font-family: Helvetica, sans-serif;
font-size: 1rem;
}
</code>
</pre>
</figure>

可以嵌套使用figure

在有需要的时候,可以对figure进行嵌套使用,这里为了增加语义化,添加了ARIA role属性。

<figure role="group">
<figcaption>Dog breeds</figcaption>
<figure>
<img src="dog1.jpg" alt="Maltese Terrier">
<figcaption>Adorable Maltese Terrier</figcaption>
</figure>
<figure>
<img src="dog2.jpg" alt="Black Labrador">
<figcaption>Cute black labrador</figcaption>
</figure>
</figure>

有关如何在figure和figcaption元素上使用ARIA的详细,可以看之前的文章《如何在HTML5中有效使用ARIA》

使用figcaption的正确方式

figcaption元素表示figure的一个图例或标题。

并不是所有的figure都需要figcaption

然而,当使用figcaption时,它最好在figure块中,作为第一个或最后一个元素。

<figure>
<figcaption>Three different breeds of dog.</figcaption>
<img src="dog1.jpg" alt="Maltese Terrier">
<img src="dog2.jpg" alt="Black Labrador">
<img src="dog3.jpg" alt="Golden Retriever">
</figure>

<figure>
<img src="dog1.jpg" alt="Maltese Terrier">
<img src="dog2.jpg" alt="Black Labrador">
<img src="dog3.jpg" alt="Golden Retriever">
<figcaption>Three different breeds of dog.</figcaption>
</figure>

在figcaption中包含其它标签元素

如果希望给图像添加更多语义,你可以使用其它元素,如h1,p

<figure>
<img src="dogs.jpg" alt="Group photo of dogs">
<figcaption>
<h2>Puppy School</h2>
<p>Championship Class of 2016</p>
</figcaption>
</figure>

你在使用figure和figcaption元素时,还有其它哪些方面,在这里没有提到的,可以在评论中写出来。

原文:Quick Tip: The Right Way to Use Figure & Figcaption Elements

作者:Georgie Luhur

原文链接:https://www.sitepoint.com/quick-tip-the-right-way-to-use-figure-and-figcaption-elements/

[翻译]小提示:使用figure和figcaption元素的正确方式的更多相关文章

  1. 【Java】List遍历时删除元素的正确方式

    当要删除ArrayList里面的某个元素,一不注意就容易出bug.今天就给大家说一下在ArrayList循环遍历并删除元素的问题.首先请看下面的例子: import java.util.ArrayLi ...

  2. Java 删除List元素的正确方式

    方式一:使用Iterator的remove()方法 public class Test { public static void main(String[] args) { List<Strin ...

  3. html5-figure和figcaption元素

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  4. h5中的分组元素figure、figcaption、hgroup元素介绍

    分组元素用于对页面中的内容进行分组. figure元素和figcaption元素 figure元素用于定义独立的流内容(图像.图表.照片.代码等),一般指一个独立的单元.figure元素的内容应该与主 ...

  5. 基于百度通用翻译API的一个翻译小工具

    前几天写了一个简单的翻译小工具,是基于有道翻译的,不过那个翻译接口有访问限制,超过一定次数后会提示访问过于频繁,偶然发现百度翻译API如果月翻译字符少于200万是不收取费用的,所以就注册了一个百度开发 ...

  6. html5标签figure、figcaption

    figure.figcaption,这俩个标签都是定义图文的 常常用到一种图片列表,图片+标题或者图片+标题+简单描述.以前的常规写法: <li> <img src="te ...

  7. C#借助谷歌翻译实现翻译小工具(一)基本功能实现

    软件效果: 实现原理很简单,就是封装谷歌翻译网站:http://translate.google.cn/,一个WebBrowser"肢解"谷歌翻译网站的HtmlElement元素, ...

  8. HTML中的figure与figcaption标签

    本来想分两篇文章来解释说明figure.figcaption的,但是这俩个标签都是定义图文的,所以我们合起来讲解,大家更能容易接受. 大家在写xhtml.html中常常用到一种图片列表,图片+标题或者 ...

  9. 纯 css 打造一个小提示 tooltip

    最后编辑:2019/11/26 前 无意间在寻找资料时候,发现一个不错的小提示,查看源码竟然是纯手工 css 编写(文章底部参考链接). 效果 使用的特性 css2 中的 attr 函数,所以现在(2 ...

随机推荐

  1. 160513、nginx+tomcat集群+session共享(linux)

    第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...

  2. Javascript-可定义位数的十进制转二进制

    // 十进制转二进制 function binary (num, Bits) { var d = parseInt(num / 2) var resArry = [num % 2] for(; d ! ...

  3. 【转】SignalR来做实时Web聊天

    本章和大家分享的内容是使用Signal R框架创建个简易的群聊功能,主要讲解如何在.Net的MVC中使用这个框架,由于这个项目有官方文档(当然全英文),后面也不打算写分享篇了,主要目的是让朋友们在需要 ...

  4. Educational Codeforces Round 25 E. Minimal Labels&&hdu1258

    这两道题都需要用到拓扑排序,所以先介绍一下什么叫做拓扑排序. 这里说一下我是怎么理解的,拓扑排序实在DAG中进行的,根据图中的有向边的方向决定大小关系,具体可以下面的题目中理解其含义 Educatio ...

  5. nodejs(三)上之express

    express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. 使用 Express 可以快速 ...

  6. 【转】Keepalived无法绑定VIP故障排查经历

    一 故障描述 我在台湾合作方给定的两台虚拟机上部署HAProxy+Keepalived负载均衡高可用方案.在配置完Keepalived后,重新启动Keepalived,Keepalived没有绑定VI ...

  7. Python并行编程(二):基于线程的并行

    1.介绍 软件应用中使用最广泛的并行编程范例是多线程.通常一个应用有一个进程,分成多个独立的线程,并行运行.互相配合,执行不同类型的任务. 线程是独立的处理流程,可以和系统的其他线程并行或并发地执行. ...

  8. (0.2.1)mysql数据库环境-操作系统配置

    目录 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 2.1.如何查看官方文档了解环境要求 2.2.安装虚拟机环境与操作系统 2.3.操作系统最优配置9大步 ...

  9. python爬虫 (一) 爬虫基础了解,urllib

    • URL的含义: 统一资源定位符,结构: URL的格式由三部分组成: ①第一部分是协议(或称为服务方式). ②第二部分是存有该资源的主机IP地址(有时也包括端口号). ③第三部分是主机资源的具体地址 ...

  10. Jmeter(十)Linux下配置安装Jmeter及执行测试任务

    一.安装JDK7.0版本 1.先卸载服务器自带的jdk软件包 # java -version #查看服务器是否安装过 # rpm -qa |grep gcj #查看服务器安装的jdk软件包信息 # y ...