You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Nuxt时如何解决Safari浏览器Do Hyeon字体渲染异常问题

问题成因

这是Safari浏览器渲染Do Hyeon这类开源韩文无衬线字体的已知Bug:初始渲染短文本、非全大写文本时,Safari会错误将空格字符的宽度计算为0,只有触发元素重绘(比如悬停、选中文本、页面缩放)时,才会重新计算字符宽度正常显示空格。你之前添加的text-rendering: optimizeLegibility和-webkit-font-feature-settings: 'kern' 1会强制Safari启用字距优化,反而可能加重该解析错误。

可用解决方案

  • 方案一(最常用,无侵入):给使用Do Hyeon字体的元素添加以下CSS属性,避开字距解析Bug同时强制初始渲染走GPU计算
.target-element {
  font-kerning: none;
  -webkit-text-size-adjust: 100%;
  transform: translateZ(0);
}
  • 方案二(兼容极端场景):手动给文本内的空格添加占位标签,强制保留空格宽度
    CSS代码:
.space-placeholder {
  display: inline-block;
  width: 0.25em;
}

文本使用示例:欢迎<span class="space-placeholder"></span>使用

  • 方案三(备选):给Safari单独指定兜底字体,规避该字体的渲染问题
/* 仅Safari生效的规则 */
@supports (-webkit-touch-callout: none) {
  .target-element {
    font-family: system-ui, sans-serif, "Do Hyeon";
  }
}

问题现象参考:
异常渲染效果图
选中后正常渲染效果图
(第二张图为选中文本时的正常渲染效果)

内容的提问来源于stack exchange,提问作者Nagisa Ando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 19:54:05