Skip to content

Safari 字体设置无效排查及解决方案

Published: at 10:35 AMSuggest Changes

碰到了这么一个 bug,在 Safari 上无论怎么在页面上设置字体,字体都不生效,Chrome 就没问题。

font-family: Arial, 'Ping Fang SC', 'Microsoft YaHei', Helvetica, sans-serif,
  'SimSun';

这个属性我们甚至直接加到 style 里面也是无效的

<span
  class="token property"
  style='font-family: Arial, "Ping Fang SC", "Microsoft YaHei", Helvetica, sans-serif, "SimSun";'
  >font-family</span
>

我和我同事都是一脸楞逼

然后我直接删了页面上所有的 dom 元素,还有 css 文件进行调试,发现仍然无效。但是有一部分页面字体设置是生效的,我继续排查。发现了这么一处与众不同的地方。

<html lang="en">
  ...
</html>

其中有一个属性 lang 设置为 en

我试着去掉了这个 lang 属性,字体就能设置成功了。

<html>
  ...
</html>

后记

霜霜家 💕 小迷妹 💕-Pomo(资深 c lang java lang 开发,算法工程师,深度学习开发 - 指出了代码中的错误

代码中的错误


Previous Post
巧用 Getter 和 Setter 进行 JavaScript 调试
Next Post
JS 设置表格列宽无效