HTML 5的革新之一:语义化标签二文本元素标签、分组元素标签。
HTML 5的革新——语义化标签(一)中介绍了一些HTML5新加的一些节元素,一张页面中结构元素构成网页大体,但是也需要其他内容来填充,譬如图片、文本、代码、表单、交互等等。所以接下来我们就来详细了解HTML5的新增加的和重新定义的文本元素标签、分组元素标签等其他元素标签。
文本字体元素
文字对SEO影响很大,而HTML5对一些文本字体元素的语义又重新定义了一遍,也增加了一些新的。那我们就来重新认识他们。
- a(anchor 的缩写): 用于定义超链接
- em(emphasis 的缩写):em 是句意强调,加与不加会引起语义变化,也可以理解为局部强调,用在语句某个单词上来改变句子的侧重。
- strong:strong表示重要,strong 的强调则是一种随意无顺序的,看见某文时,立刻就凸显出来的关键词句。
- p:p元素
- b(bold 的缩写):b 元素原本就是加粗,现在表示“文体突出”文字,通俗将是用来在文本中高亮显示某个或者几个字符,旨在引起用户的特别注意,无强调作用。譬如文档概要中的关键字,评论中的产品名,以及分类名。
- i(italic 的缩写):i 元素原本只是倾斜,现在描述为在普通文章中突出不同意见或语气或其他的一段文本,就像剧本里的话外音(外语、译音),或也可以用做排版的斜体文字。
- code:定义计算机代码文本。
- q(quote 的缩写):用于定义一段引用的内容(短内容)
- cite :用于定义引用内容出自书籍或杂志等的标题,不允许其他信息,如作者,日期等。
- u (underline 的缩写):定义下划线文本
- abbr (abbreviation 的缩写):定义一个缩写文本,建议在 abbr 的 title 属性中描述缩写的全称
- dfn (defining instance 的缩写):用于定义一个术语
- var :定义计算机代码中的变量
- samp (sample 的缩写):由程序输出的示例文本
- kbd (keyboard 的缩写):定义由键盘输入的文本
- wbr (word break)的缩写:定义换行的时机
- span :没有任何语义
- br :定义一个换行符
以上很多只是W3C定义,有些还不支持,但是为了彻底贯彻W3C的语义化,还是慢慢熟悉用起来吧。
文本字体元素标签使用注意:
- 在下面这些元素都不适合的时候:表重要的 strong ,表强调的 em ,表标题的 h1–h6,表高亮或标记文本的 p 等,就用 b 来表示。
- em 的强调是用在语句某个单词上来改变句子的侧重,可以说是局部的,而strong 和局部还是全局无关,局部强调用strong也可以,strong强调的是重要性,不会改变句意。
time元素
time元素也是文本标签,因为是全新的标签,所以我们单独来介绍。time元素用来标记一篇文章的发布时间。
<span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><time</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">datetime</span><span class="pun" style="color: rgb(147, 161, 161); ">=</span><span class="atv">"2012-02-15"</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">pubdate</span><span class="tag" style="color: rgb(30, 52, 123); ">></span><span class="pln" style="color: rgb(72, 72, 76); ">2012年02月15日</span><span class="tag" style="color: rgb(30, 52, 123); "></time></span>
形如如上代码,知道time
标签一般有三个组成部分
- 机器可识别的时间戳:格式必须是年月日的数字以减号相隔,如果增加时间,那就在日期后面加字母T然后跟24小时格式的时间值以及时区偏移量,形如
datetime="2012-2-15T22:49:40+08:00"
- 人可识别的文本内容:格式随意,只要能看懂。
- 一个可选的pubdata标记:pubdata是个布尔值,如果需要,写上属性名就好
pubdata
。但是为了美观,我们也可以写成pubdata=""
我们还要注意的是,如果该time
位于一个article中,那么它表示这篇文章的发布时间;如果不在article之中表示整个文档的发布时间。
<span class="tag" style="color: rgb(30, 52, 123); "><article></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><header></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><h1></span><span class="pln" style="color: rgb(72, 72, 76); ">html5jscss网</span><span class="tag" style="color: rgb(30, 52, 123); "><time</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">datetime</span><span class="pun" style="color: rgb(147, 161, 161); ">=</span><span class="atv">"2012-02-14"</span><span class="tag" style="color: rgb(30, 52, 123); ">></span><span class="pln" style="color: rgb(72, 72, 76); ">2月14日</span><span class="tag" style="color: rgb(30, 52, 123); "></time></span><span class="pln" style="color: rgb(72, 72, 76); ">成立</span><span class="tag" style="color: rgb(30, 52, 123); "></h1></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><p></span><span class="pln" style="color: rgb(72, 72, 76); ">发布 </span><span class="tag" style="color: rgb(30, 52, 123); "><time</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">datetime</span><span class="pun" style="color: rgb(147, 161, 161); ">=</span><span class="atv">"2012-02-15"</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">pubdate</span><span class="tag" style="color: rgb(30, 52, 123); ">></span><span class="pln" style="color: rgb(72, 72, 76); ">2012年02月15日</span><span class="tag" style="color: rgb(30, 52, 123); "></time></span><span class="pln" style="color: rgb(72, 72, 76); "> 分类:前端交流</span><span class="tag" style="color: rgb(30, 52, 123); "></p></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "></header></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><p></span><span class="pln" style="color: rgb(72, 72, 76); ">你好世界!</span><span class="tag" style="color: rgb(30, 52, 123); "></p></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "></article></span>time示例代码
分组元素标签
我们熟悉的div、 p 、dl 、dt、dd、ol、ul、li、hr都是分组元素标签,我们接下来看一些不常用的和新加的分组元素标签
- blockquote:标记一段长引文。标记短引文(行内引文),应采用 q 元素!
- pre:pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。pre 标签的一个常见应用就是用来表示源代码。他跟code的关系好比blockquote和q的关系。
ol元素
ol元素在HTML5有改良,增加了两个属性:
- “start”:start属性用来定义列表编号的起始位置,
- “reversed”:reversed属性表示将列表进行反转,但是目前还没有任何一款浏览器对其提供支持,在这里就不细说了。
figure元素与figcaption元素
figure元素用来包含一块独立内容,该内容如果被移除掉不会对周围的内容有影响。具体来说它可以用来表示图片,统计图,图表,音频,视频,代码片段等。如果需要你也可以给该内容添加一个标题,这个标题使用figcaption来表示。figcaption只能作为figure元素的子元素,可以放在figure元素内的任何位置。形如:
<span class="tag" style="color: rgb(30, 52, 123); "><figure></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><img</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">src</span><span class="pun" style="color: rgb(147, 161, 161); ">=</span><span class="atv">""</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="atn" style="color: rgb(30, 52, 123); ">alt</span><span class="pun" style="color: rgb(147, 161, 161); ">=</span><span class="atv">""</span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); ">/></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "><figcaption></span><span class="pln" style="color: rgb(72, 72, 76); ">html5jscss前端网是刚建立的小站</span><span class="tag" style="color: rgb(30, 52, 123); "></figcaption></span><span class="pln" style="color: rgb(72, 72, 76); "> </span><span class="tag" style="color: rgb(30, 52, 123); "></figure></span>
不是所有图片都用figure来包裹,img 标签也有语义的。如果纯粹只是为了呈现的图,也不在文档其他地方引用,那就绝对不要用figure。如果和上下文有关,也可以把它移动到附录,那就别用figure,aside可能适合。
figure元素和aside元素看起来表达的内容差不多,但是aside所能包含的内容比figure要广。当你不知道如何选择的时候可以这样来做:这段内容对周围的内容来说是一个要点,或者很重要,不可少,那么可以使用figure,否则使用aside。
注意:
一个figure元素内最多只允许放置一个figcaption元素,也可以不放,但是其他元素可无限放置。注意不是所有图片都得用figure元素。
嵌入元素标签
在页面中除了显示文档活字符外,还需要放入一些其他元素,就是我们所说的嵌入元素。
嵌入元素包括img(图片),页面(iframe),多媒体对象将不再全部绑定在 object 或 embed 标签 中,而是由有 video(视频)audio(音频),用于绘画的 canvas 元素
这里我们不详细介绍它们的属性了,以后专门介绍。
HTML5中增加了一些表单元素和一些交互元素等新的标签,但是着重点不同,所以我们放在另一片文章来继续了解。HTML5语义标签到此结束。