如何在宙斯浏览器中配置网页脚本注入以实现自动签到功能
2026-06-29 3372192
2026-06-28 0
Safari字体加载失败主因是@font-face声明不合规、MIME类型错误、CDN拦截、扩展干扰或字体缓存异常,需补全format()、配对font-weight/font-style、验证Content-Type为font/woff2、禁用扩展、清除缓存并修复系统字体。

当你在Safari中打开一个依赖Google Fonts、Adobe Fonts或自托管WOFF2字体的网页时,标题变成方块、正文显示为Times New Roman、中文段落错位堆叠——这不是网页坏了,而是Safari在加载第三方字体时卡在了校验环节,直接跳过渲染,回退到系统默认字体链,导致字符边界崩塌、换行失效、宽度计算错误。
第一步:在乱码页面按 Command + Option + I 打开开发者工具→切换到“网络”标签页→刷新页面→在筛选框输入 fonts.googleapis.com 或 use.typekit.net 或你网站实际使用的CDN域名。
第二步:查看该字体请求的状态码。若出现 0(blocked)、403(Forbidden) 或响应体为空,说明字体资源根本未送达浏览器;若状态为200但字体预览区文字仍是方块,继续下一步。
第三步:点击该字体请求→右侧选“字体”子标签→观察“已加载字体”列表是否为空,或显示“未应用任何字体”。若为空,基本可锁定是字体未注入DOM或@font-face规则被Safari静默丢弃。
方法一:补全format()并分离字重声明
打开网页源码或Elements面板,找到CSS中的@font-face规则。如果只写了 src: url('inter-medium.woff2'); 而没写 format('woff2'),【iOS/iPadOS Safari 15+及macOS Safari 16+会直接忽略该条规则】。必须改为:src: url('inter-medium.woff2') format('woff2');。若同时提供woff2和ttf,不能合并写,要拆成两条独立声明,每条都带对应format值。
方法二:强制配对font-weight与font-style
比如你引入的是Inter Medium(字重500),但@font-face里只写了 font-weight: 500;,没写 font-style: normal;,那么后续用 font: 500 16px "Inter"; 时,Safari因匹配不全而放弃加载——【漏写font-style会导致font简写声明完全失效】。必须显式补上 font-style: normal; 或 font-style: italic;,且值要与实际字体文件元数据严格一致。
第一步:在Safari中打开问题网页→Command + Option + I→Network→筛选Fonts→点击对应woff2请求→右侧Headers→查看Response Headers里的Content-Type字段。
第二步:若显示 text/plain、application/octet-stream 或为空,说明服务器未正确配置MIME类型。WOFF2必须返回 font/woff2(不是application/font-woff2),TTF必须为 font/ttf。Nginx需添加 types { font/woff2 woff2; };Apache需启用mod_mime并加 AddType font/woff2 .woff2。
第三步:若字体来自Google Fonts等第三方CDN,且请求状态为blocked: mixed-content,说明当前网页是HTTP协议,而字体资源走HTTPS,Safari主动拦截。此时必须将整个网站升级为HTTPS,否则无法加载。
点击菜单栏「文件」→「新建无痕浏览窗口」→在地址栏输入原网址访问。
这一步操作起来很简单,直接把网页地址粘进去就行。如果无痕窗口中字体正常显示,说明常规模式下有扩展在劫持FontFaceSet.load()或篡改document.styleSheets——广告拦截器、暗色模式插件、字体替换类扩展最常干这事。
进入Safari → 偏好设置 → 扩展,取消勾选所有扩展,然后完全退出Safari(右键Dock图标→退出),再重新打开测试。
① 退出Safari及所有其他应用。
② 按Command + Shift + G,输入路径:~/Library/Caches/com.apple.Safari/,删除该文件夹内全部内容。
③ 再次按Command + Shift + G,输入:~/Library/Caches/,删除名为 com.apple.WebKit.WebContent 的文件夹。
④ 打开「字体册」App→菜单栏「文件」→「验证字体」→全选→点击「验证」,自动移除损坏字体项。
⑤ 重启Safari,在地址栏输入 safari://clearcache 并回车,确认清除Web内容缓存。