在元素之前使用&;lt;i&;gt;而不是将元素放在&;lt;span&;>中有什么好处?
可能的重复项:
<I> tag for icons?
我在FontAwesome中看到,为了使用他们的图标字体,他们使用了一个空的<i>
,类似于:
<a class="btn" href="#">
<i class="icon-refresh"></i> Refresh
</a>
不是像这样用<span>
包装:
<a class="btn" href="#">
<span class="icon-refresh">Refresh</span>
</a>
我看到其他一些网站也采用了类似的技术。AFAIK,这两种技术都使用了css伪元素:before
,所以我想知道为什么他们使用<i>
而不是用<span>
来包装它?
使用空<i>
有什么优势吗?它是语义的吗?
解决方案
我能想到的唯一优势就是<i>
编写起来更短(而且不是通过网络发送,因为GZip不太关心它是I还是SPAN带有20个字母的类),而且它与其他标记不同。就像自制的图标标签。
但<i>
中没有其他语义值。
I元素表示以另一种声音或语气表示的文本范围, 或以其他方式偏离正常的散文,如分类法 称谓、技术术语、来自另一个术语的惯用语 语言、思想、船名或其他一些散文,其典型的 排版演示文稿以斜体显示。
http://www.w3.org/International/questions/qa-b-and-i-tags/
那么它是语义的吗?不是的。但没人在乎,没什么大不了的。
相关文章