iconfontのsymbol的使用

iconfontのsymbol的使用

iconfont三种方式的优缺点

unicode
优点:

1.兼容性最好,支持ie6+
2.支持按字体的方式去动态调整图标大小,颜色等等
缺点:
1.不支持多色图标
2.在不同的设备浏览器字体的渲染会略有差别,在不同的浏览器或系统中对文字的渲染不同,其显示的位置和大小可能会受到font-size、line-height、word-spacing等CSS属性的影响,而且这种影响调整起来较为困难
3.不直观,看unicode码很难分辨什么图标

fontclass

1.兼容性良好,支持ie8+
2.相比于unicode语意明确,书写更直观。可以很容易分辨这个icon是什么

symbol

1.支持多色图标了,不再受单色限制
2.支持像字体那样通过font-size,color来调整样式。
3.支持 ie9+
4.可利用CSS实现动画
5.减少HTTP请求
6.矢量,缩放不失真
7.可以很精细的控制SVG图标的每一部分

下面是使用symbol方式的详细步骤

使用步骤

  1. 进入https://www.iconfont.cn/选择一个你喜欢的图标库,将图标加入购物车。
    1501373-20190721214121537-901378026.png
  2. 点击右上角购物车打开购物车
  3. 加入项目,没有就新建一个项目,点击确定,跳转到我的项目
    1501373-20190721214058514-432499934.png
  4. (菜单栏->图标管理->我的项目),点击下载到本地
    1501373-20190721214226977-1500309498.png
  5. 把如图js文件移动到项目中
    1501373-20190721214241482-1607743920.png
  6. 使用 demo
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>icon</title>

    <style>
        .icon {
            width: 1em;
            height: 1em;
            vertical-align: -0.15em;
            fill: currentColor;
            overflow: hidden;
        }
    </style>
</head>

<body>
    <svg class="icon" aria-hidden="true">
        <use xlink:href="#icon-food-macaron"></use>
    </svg>

    <script src="./icon/iconfont.js"></script>
</body>

</html>

效果
1501373-20190721215214192-874161123.png

注意xlink:href的值前面带有#,在我的项目中,每个图标对应一个id。

补充

快速将多个图标添加到购物车,控制台输入如下代码执行

var icon=document.getElementsByClassName('icon-gouwuche1');
for(var i=0;i<icon.length;i++){
    icon[i].click();
}

转载于:https://www.cnblogs.com/guangzan/p/11222927.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值