Safari中自定义字体过粗是因默认启用subpixel-antialiased导致,需对目标元素用antialiased覆盖;同时须确保@font-face显式声明font-weight/font-style、字体真实支持对应字重,并保留hinting信息。
这不是字体文件本身变粗了,而是 Safari 对 @font-face 加载的字体默认启用 -webkit-font-smoothing: subpixel-antialiased,在 Retina 屏上会强化横向笔画渲染,导致中文字体(尤其黑体类)视觉加粗、发虚、边缘带彩边。Chrome 和 Firefox 不走这套逻辑,所以同一份 CSS 在它们里面看着“正常”——这恰恰是问题根源。
必须只对使用自定义字体的容器生效,不能写在 body 或 * 上,否则输入框、按钮、下拉菜单等原生控件文字会变硬、断笔、可读性下降。
.headline、.body-text
font-family: "MyFont", sans-serif; + -webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing:iOS Safari 不认,纯属冗余none:该值已废弃,部分 iOS 版本直接忽略,且影响辅助功能缩放示例:
h1.headline {font-family: "Inter", sans-serif;-webkit-font-smoothing: antialiased !important;}
Safari 会对缺失 font-weight 或 font-style 的 @font-face 规则做宽松匹配,比如你只声明了 font-weight: 600 但没写 font-style: normal,后续用 font: 600 16px "MyFont" 时,它可能 fallback 到系统黑体(如 PingFang SC)并叠加渲染,造成“双粗”效果。
@font-face 必须显式配对 font-weight 和 font-style,哪怕都是 normal
font-weight 值,和字体文件真实支持的字重一致(比如文件只含 Regular,就别写 font-weight: 500)font 查看最终解析出的 font-family 和 font-weight,确认没被悄悄替换某些工具导出的 WOFF2 字体为了体积压缩,会剥离 hinting 信息。Safari 在 antialiased 模式下对无 hinting 字体的笔画控制力较弱,小字号下容易出现局部加粗或模糊——这不是 CSS 能修的,得回源头处理。
glyf 表)-webkit-font-smoothing 的作用域最易被忽略的是:同一页面混用系统字体(如 SF Pro)和自定义字体时,不能靠继承统一设 smoothing,必须按容器分别声明。否则要么系统字体变糊,要么自定义字体还是粗。
tlwdr7650路由器没有wps按钮(tlwdr7650路由器没有wps按钮怎么办)
tlwdr7632扩展器电脑怎么设置(tlwdr7632扩展器电脑设置方法)
tlwda6332re安装教程(tlwda6332re如何安装)
tlwdr7632扩展器手机怎么设置(tlwdr7632扩展器手机设置方法)
tlxdr3010怎么设置网速快(tlxdr3010网速快设置方法)
tlwdr5620易展版怎么克隆(tlwdr5620易展版克隆方法)