Tag标签 | 收藏本站 | 设为首页 | 参考书籍 | web前端技术交流①群:WEB前端技术交流群 会员登录 | 会员注册

首页文字描述

会员投稿 RSS订阅 专注web前端: 要么读书、要么旅行,身体和精神必须要有一个在路上。【每天一小步,成功一大步】
搜索: 您的位置主页 > WEB前端 > Div+CSS > <b>和<i>替换成<strong>和<em>的好处以及原因?
隐藏/显示侧边栏

<b>和<i>替换成<strong>和<em>的好处以及原因?

2013-09-22 15:24    来源:未知    责任编辑:admin    字号【
在面试的过程中,我们有时候会遇到一些刁钻而不好回答的问题?像<b>和<i>替换成<strong>和<em>的好处以及原因?至于为什么,可以说我们80%左右的都会比较含糊而不得其因,只知道是为了语义性,换旧话来说就是让标签更能让人看懂和理解。

在现实情况下,经常有必要加上非语义标签,以便实现特定的设计目标,主要是因为现在著名的浏览器都无法百分之百支持标准的缘故.有些CSS规则在部分浏览器中无法显示正确的效果,而这不幸的让我们在达成某些设计目标的过程中必须使用额外的标签.

有个重要的概念必须放在心上:那就是尽量尝试撰写语义化结构将能带来实际的好处.同时,对标准的支持虽然没有达到百分之百,但也已经越过临界点让我们现在就能使用符合网络标准的方法撰写网页.有些时候必须做点牺牲,但是坚持撰写越多的符合标准的标签,未来的工作就会越轻松.

显示效果 VS 结构标签

本章节将会讨论显示效果与结构标签的不同,更确切的说,是讨论使用<strong>替换<b>,以及使用<em>替换<i>的差异.在本章稍后,我们也会讨论几个其他短语元素以及它们在符合标准,结构化标签语法内的重要性.

你或许听说过某些人建议在需要粗体文字时要用<strong>替换<b>,但是他却没有进一步告诉你为什么需要这样的替换.在不知道"为什么"的情况下,实在很难期待其他网页设计者只因为听过需要这样做就改变他们对标签的使用习惯.

为什么<strong>和<em>比<b>和<i>好?

去掉<b>和<i>标签,替换成<strong>和<em>到底是有什么好处呢?其实这一切都是为了表达语义和结构,而不是为了只是显示效果,本书的所有示例也都努力遵循这个概念.

看看专家怎么说

首先,来看看W3C在HTML4.01的短语元素规范里是怎么叙述<strong>和<em>的(http://www.w3.org/TR/html4/struct/text.html#h-9.2.1):

短语元素能在文字片段之内加上结构信息,常见的短语元素意义如下:

<em> 代表强调

<strong> 代表更强烈的强调

所以在此讨论的是两种不同程度的强调.举例来说,就是一个单字或者短语,念的时候应该比较大声,音调较高,念的快些,或者是...嗯,就是比一般文字内容更强调.

W3C接着还叙述了下面这段内容:

短语元素的展示效果随着浏览器的不同,一般来说可视化浏览器应该以斜体显示<em>的文字内容,以粗体显示<strong>的文字内容.语音合成软件则能配合内容改变合成参数,像是音量,音调与速度等等.

啊哈!最后一句特别有意思,语音合成软件(之前我们称之为屏幕阅读器)将会正确处理必须强调的文字,这的确是件好事.

相对之下,<b>或是<i>只是单纯的显示效果标签.如果我们的目标是将结构与显示效果分离的话,使用<strong>和<em>就是正确的选择,单纯想要显示粗体,斜体文字的时候用css就好了.本章稍后会讨论更多例子.

接着看两个标识示例,帮助我们了解它们的差异.

方法A
your order number for future reference is: <b>6474-82071</b>. 方法B
your order number for future reference is: <strong>6474-82071</strong>. 又粗又美丽

这个情况是使用<strong>比<b>更适合的完美例子,我们打算让句子内的特定文字显示的更加重要.除了粗体显示订单编号以外,我们也希望屏幕阅读器也改变它们表达这段内容的方式:提升音量,改变音调或速度.方法B能够同时达到这两个目的.

<em>又如何?

同样的,以<em>取代<i>,能够同时表达重要性,而不只单纯的以斜体显示文字内容.来看看这两个例子:

方法A
It took me not one,but <i>three</i> hours to shovel my driveway this morning. 方法B
It took me not one,but <em>three</em> hours to shovel my driveway this morning. 强调语气

在前面的例子里(本书撰写时的真实情况),我的目的是使"three"这个字以强调语气表现,如同我大声念出这个字,视觉上,方法B在大多数浏览器里都会以斜体显示,而屏幕阅读器也会适当的调整音色,速度或音量.

更多
Tags 标签:
责任编辑:admin
设为首页 | 加入收藏 | 关于我们| 版权声明 | 在线留言 | 网站地图 |