doubleyong
管理员
管理员
  • 最后登录2025-12-02
  • 发帖数1198
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
阅读:10480回复:1

为什么要用i标签<i></i>用作小图标?

楼主#
更多 发布于:2016-12-08 15:45
关于 <i> 标签, W3C上就这样描述的:
<i> 标签显示斜体文本效果。

<i> 标签和基于内容的样式标签 <em> 类似。它告诉浏览器将包含其中的文本以斜体字(italic)或者倾斜(oblique)字体显示。如果这种斜体字对该浏览器不可用的话,可以使用高亮、反白或加下划线等样式。

但是,国内好多大型网站都用<i></i>表示小icon图标,这是原因吗?这样不是违背了语义化的原则吗?

查找了相关的资料与博客,发现:
        用 <i> 元素做图标在语义上确实是不正确的,为什么这么多人用,主要因为
  1. <i>比<span>短
  2. <i>标签只是样式标签和语义关系不大
  3. 语义化只是建议不是强制性要求
  4. 多数图标用的是空 <i> 元素,配合 ::before 伪元素实现,因为没有内容,读屏器不会朗读(这样即使有特殊处理也跳过了),机器理解起来应该也没什么影响。
        综合来看,从实用性上暂时没看出有什么缺陷,所以目前用不用 <i> 取决于你对于遵循规范有多洁癖。

        注:
                  bootstrap框架 v2版本文档可以看到它的组件图标就是使用了i标签
                 bootstrap框架 v3以上文档中已经改回span标签


参考:https://www.zhihu.com/question/26880548/answer/34589585


知识需要管理,知识需要分享
传奇刘星
管理员
管理员
  • 最后登录2024-04-24
  • 发帖数588
  • 社区居民
  • 忠实会员
沙发#
发布于:2016-12-18 16:10
因为icon的首字母是i
https://blog.feiyuit.cn
游客


返回顶部

公众号

公众号