iOS Safari 在同一字符串中使用不同语言的奇怪行为

Weird Behaviour in iOS Safari with Different Languages in the Same String

我在 Safari 中有一个非常奇怪的行为。问题是我有一个字符串(在标签内),其中一部分用西里尔文(保加利亚语)写成,另一部分用拉丁文(英语)写成。

在我所有的桌面浏览器上,它都运行良好,没有任何问题。然后我拿了我的iPhone,我发现了一个惊喜:句子的一部分是粗体(按照CSS应该是这样),还有一部分是正常的。

你可以在这里看到这个奇怪的行为: http://www.buderus-bg.com/bultherm/product/10

它可以是什么?为什么我只在 iOS 上遇到这个问题? 网站的字符集 UTF-8。数据库中的那个字段是 utf8_general_ci.

您正在尝试使用不包含西里尔字符的字体(Google 的 Open Sans with subset=latin)显示文本,因此浏览器将需要找到不同的字体显示西里尔文字。

解决方案:删除 subset=latin 位。

编辑:它仅在 iOS 与 Safari 中发生的事实纯属巧合。浏览器搜索可以显示西里尔字符的字体,它发现的字体与 Open Sans 有很大不同,您可以看到粗细的差异。在我的台式机上,我也看到了差异。