Mac 的 Firefox 和 Windows 的 Explorer 中出现奇怪的字符

Weird characters are appearing in Firefox on Mac and Explorer on Windows

我建立的其中一个网站遇到了一个非常奇怪的问题。据我所知,它出现在 Windows 的 Internet Explorer 和 Mac 的 Firefox 上,也许还有其他配置。它涉及瑞典字符 å ä ö.

在此页面上:http://www.h2.se/case/kyleffekt/, the characters are being displayed properly. However on this page: http://www.h2.se/case/sun-flex/,它不是。

截图供参考:

我正在使用 Google 字体服务上的 Open Sans,我还通过 Typekit 使用 Omnes-Pro 作为标题。

该页面是用 WordPress 构建的,不确定这是否重要。

有没有人遇到过这个问题?我在网上的几个地方看到过它,但没有人发布过解决方案,也没有人发布过这个看似奇怪的故障的原因。我已尝试查看网页的 HTTP headers,但我找不到任何内容。

最奇怪的是,它在一个页面上有效,但在另一个页面上无效,而且只在特定的浏览器中有效。

那是因为在一个文档中,你有实际的 ö 字符,而在另一个文档中你有一个 o 后跟“在前一个字符上加上变音点”的 Unicode 序列– 并不是所有的浏览器都能很好地处理这个问题。 (我经常看到这种情况发生,当内容从不同来源复制到 HTML 文档时——就像 Mac 上的 PDF 一样,这种情况经常发生。)

Unicode equivalence 将是此处的关键字,resp。 Unicode 规范化,如果您打算使用您的应用程序逻辑对其进行处理。 (如果您只想让相关文档工作,那么您最好在编辑器中重新键入这些字符。)

这只是发生在我身上,我用插件 Better Search Replace 很快解决了它。

  1. 使用 Firefox 时从 WP 编辑器复制 "corrupt" 个字符,例如 Å、Ä 和 Ö。
  2. 将 "corrupt" 字符粘贴到 Better Search Replace 的 "Search for" 字段中
  3. 只需点击关键字上的按钮,即可在 "Replace with" 字段中键入 "correct" 字符。
  4. 执行搜索和替换
  5. 对所有 "corrupt" 个字符做同样的事情。

这样,您就不必手动完成那些耗时且枯燥的工作。刚才对我来说很完美。

插件:https://sv.wordpress.org/plugins/better-search-replace/