css 引用字體跨域問題


公司這邊做網頁IM,我做了簡單的封裝,說白了就是 頁面引用一個JS,就能生成IM浮層。一切順利,最后發現字體文件有個跨域問題,研究了一天,對於跨域使用的傳統的處理方式:

1 Access-Control-Allow-Headers    content-type
2 Access-Control-Allow-Methods    GET,POST,PUT,DELETE,OPTIONS
3 Access-Control-Allow-Origin    *

這個是設置IIS,但是又發現谷歌瀏覽器不支持,MMD,沒招了,只能出絕招了,處理方式如下:

字體轉base64編碼網址:https://transfonter.org/

具體步驟如下:

打開剛剛我們經過轉換的解壓出來的文件,找到stylesheet.css,復制 里面內容

@font-face {
    font-family: 'my-icon';
    src: url(data:font/truetype;charset=utf-8;base64,xxxx...) format('truetype');
    font-weight: normal;
    font-style: normal;
}

替換原來的

1 @font-face{
2     font-family:my-icon;
3     src:url(../font/iconfont.eot?v=240);
4     src:url(../font/iconfont.eot?v=240#iefix) format('embedded-opentype'),
5     url(../font/iconfont.svg?v=240#iconfont) format('svg'),
6     url(../font/iconfont.woff?v=240) format('woff'),url(../font/iconfont.ttf?v=240) format('truetype')
7 }

 完成以后刷新頁面即可,到此問題解決,我的任務也完成了!

 

 

感謝:

https://www.cnblogs.com/victorlyw/articles/9970805.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM