你必须知道的10个不常用的HTML标签

译自:TutsPlus
原文:你必须知道的10个不常用的HTML标签
版权所有,转载请注明出处,多谢!

网页开发人员常常希望能够了解并掌握多种语言,结果是,学习一门语言的所有内容是棘手的,但是却很容易发现你并没有完全利用那些比较特殊却很有用的标签。

不幸的是我们到现在还没有涉足的那些比较不知名的HTML标记所有潜力。但它永远不会太晚重新进入领域,并开始编写代码来发掘这些未开发的标签的能量。

这里是10个未被充分利用或被误解的HTML标签。或许它们不太广为人知,但是在特定情况下他们却非常有用。

1. <cite>

貌似每个人都比较熟悉<blockquote> 标签,但是你可知道<blockquote>的小弟弟<cite>?<cite> 允许你定义元素内的文字作为一种参考。一般,浏览器会用斜体来显示<cite> 标签内的文字,但是这可以用一点CSS来改变。

<cite> 标签对于引用目录或其它网站的参考非常有用。这里是一个在段落中使用cite标签的例子:

David Allen的突破性组织性的图书完成你的工作给忘了带来了一场风暴。

2. <optgroup>

<optgroup>标签是定义select标签中的选项分组的一种很好的方法。比如,你需要按时间来分组电影列表,那么就可以这样做:

1
2
<label for="showtimes">上映时间</label>
<select id="showtimes" name="showtimes"> <optgroup label="下午一点"><option value="titanic">泰坦尼克号</option> <option value="nd">贫民窟的百万富翁</option> <option value="wab">怪物史瑞克</option> </optgroup> <optgroup label="下午两点"> <option value="bkrw">狮子王</option> <option value="stf">全民超人</option> </select></optgroup>

演示:


它可以在视觉上区分电影列表。

3. <acronym>

<acronym> 是一种定义或更多解释一组文字的方法。当你用鼠标放到使用<acronym>标签的文字时,一个显示title标签的内容的框框将会出现在下边。比如:

1
微博客网站<acronym title="Founded in 2006"> Twitter</acronym> 最近常常宕机。

示例:

微博客网站 Twitter 最近常常宕机。

4. <address>

<address> 标签是一个非常不起眼的小标签,但是这并不意味着它没有用。顾名思义<address> 允许你在HTML中语义化标签。这个小巧的标签将默认斜体显示标签内的内容,当然,使用样式可以很容易的改变默认的样式。

1
2
3
4
<address>Glen Stansberry
1234 Web Dev Lane
Anywhere, USA
</address>

5. <ins> 和<del>

如果你想使用标签来显示编辑版本,<ins> 和<del> 正好适合。顾名思义,<ins> 用下划线高亮显示添加进来的内容,而<del> 用删除线显示被移除的信息。

1
John <del>likes</del> <ins>LOVES</ins> his new iPod.

示例:

大家都喜欢 遗忘了 自行车。

6. <label>

貌似表单元素最容易忘掉何时标记文本。对于表单元素,最常忘记的就是<label> 标签。不仅仅是一个便捷的标记文本的方式,<label> 标签还能传递一个”for” 属性来指定哪个元素将会被关联。<label> 不仅易于用样式来控制,还允许你让标题可点击。

1
2
<label for="username">用户名</label>
<input id="username" type="text" />

7. <fieldset>

Fieldset是一个小巧的标签,你可以用来为你的表单元素添加逻辑分组。<fieldset>标签就会在其内部的元素周围画一个框。另外一点就是可以在fieldset里面添加< legend> 标签来定义分组的标题。

1
2
3
4
5
6
7
<form><fieldset>
<legend>你比5年纪学生聪明吗?</legend>
当然<input name="yes" type="radio" value="yes" />
 
不知道<input name="no" type="radio" value="no" />
</fieldset>
</form>

示例:

你比5年纪学生聪明吗?

当然

不知道

8. <abbr>

<abbr> 标签颇类似于<acronym> 标签,不同的是<abbr> 标签只用于定义缩写单词。就像<acronym>一样,你可以为这个标签定义一个title属性。当用户将鼠标放到缩写文字上面时,全部内容就会在下面显示。<abbr> 标签很少用,但是对于屏幕阅读者、拼写检查者以及搜索引擎是非常有用的。

1
<abbr title="脑残">NC</abbr> 是一个不太文明的用语。

示例:

NC 是一个不太文明的用语。

9. rel

Rel 可以是一个极度有用的 属性,任何HTML元素都可以应用一个rel属性。它有助于传递没有另外指定的额外参数。这对于在HTML中使用JavaScript的时候是非常有用的。如果你有一个想要在行内编辑的链接,你可以添加:

1
<a rel="clickable" href="page.html">这个链接可编辑。</a>

Javascript 会寻找带有rel属性”clickable”的a链接,并应用一些Ajax并允许它在行内被编辑。这只是你可以使用rel属性的众多技术中的一种用法,因为它的潜力是无止境的。感兴趣的朋友可以深入研究一下W3C关于Rel的介绍。

10. <wbr>

<wbr>标签是一个难以相信的不出名的标签。坦率的讲,我也很怀疑你们会接触到这个标签, 因为它几乎从来没有用到。(的确,在我写这篇文章之前我几乎没有见到过这个标签)。事实上,这个标签算是一个软断行,允许你在某一行内指定一个断行点,表明在该点处可以断行,但是不是一定会断行,仅仅是在有需要断行的时候才会断行。如果你想避免出现水平滚动条,那么使用这个标签是很棒的。

示例:

下面是一个200像素宽的box,没有定义overflow。

NoWbrNoWbrNoWbrNoWbrNoWbrNoWbrNoWbrNoWbrNoWbr
HavaWbrHavaWbrHavaWbrHavaWbrHavaWbrHavaWbrHavaWbrHavaWbr

如果你想要实现相同的效果而不使用<wbr> 标签,你可以试一下&#8203;或&shy;。据说这三个标签都未被所有浏览器完全支持。你可以通过这篇文章 来查看各个浏览器对着三个标签的支持情况。

PS:颇困难的翻译了这篇文章,神飞深深的感受到了语义化的魅力以及HTML标签的强大,相信我们没有认识到的标签还有很多,结果,常见的标签大家都很熟悉,不常见的标签大家有都不会用。正如之前我在一篇文章中阐述的那样,“语义化”很大的一部分是,在恰当的地方使用合适的标签,而不是一味的div下去。如果,我们能够了解更多的HTML标签,我们就能写出更具语义的HTML代码,也能大大的降低我们写CSS的难度和工作量,并使我们的页面结构更趋合理。