1. // 动态插入css
    2. export const loadStyle = url => {
    3. const link = document.createElement('link');
    4. link.type = 'text/css';
    5. link.rel = 'stylesheet';
    6. link.href = url;
    7. const head = document.getElementsByTagName('head')[0];
    8. head.appendChild(link);
    9. };

    引用在线的iconfont生成的css

    1. // 支持同时引入多个iconfont生成的css链接
    2. const iconfontUrls = ['xxx'];
    3. const iconfontBaseUrl = `https://at.alicdn.com/t/font_$key.css`;
    4. iconfontUrls.forEach(ele => {
    5. // 动态创建链接 插入css
    6. loadStyle(iconfontBaseUrl.replace('$key', ele));
    7. });

    将iconfont生成的链接 //at.alicdn.com/t/font_2507077_2eg84bzwc0r.css(黄色标注的) 中的放入iconfontUrls中。

    每次iconfont上字体图标改动或者产生新的图标需要将新生成的css地址替换到代码中。

    在项目的css入口文件中设置字体库的基本样式

    1. [class*='ifont-'] {
    2. font-family: 'iconfont' !important;
    3. font-size: inherit;
    4. font-style: normal;
    5. -webkit-font-smoothing: antialiased;
    6. -moz-osx-font-smoothing: grayscale;
    7. }

    font-family为字体库的图标名,需要到项目中单独设置,不建议使用iconfont自己默认生成的font-family对应的图标名。
    image.png
    image.png
    使用:

    1. [class*='ifont-wid-'] {
    2. font-family: 'iconfont-wid' !important;
    3. font-size: inherit;
    4. font-style: normal;
    5. -webkit-font-smoothing: antialiased;
    6. -moz-osx-font-smoothing: grayscale;
    7. }