【问题标题】:iOS (but not OSX) browsers change curly apostrophe to straightiOS(但不是 OSX)浏览器将弯撇号更改为直撇号
【发布时间】:2016-09-29 22:22:39
【问题描述】:

我所有的 iOS 浏览器(Safari、Chrome、Firefox 和 Opera)都会自行将后跟“s”的弯撇号更改为印刷错误的直撇号。更奇怪的是,如果撇号后面不跟一个“s”,它不会进行这种更改(屏幕截图curly vs. straight apostrophes 显示了每个示例。)

Codepen example

我可以通过在 ’ 字符的任一侧插入一个 Word Joiner 字符(HTML 实体 ⁠)来解决此问题。

这是应该工作的HTML:

<li>Delta Airlines&rsquo; Sky magazine</li>
<li>Delta Shuttle&rsquo;s Shuttle Sheet magazine</li>

下面是真正起作用的HTML

<li>Delta Airlines&#8288;&rsquo; Sky magazine</li>
<li>Delta Shuttle&#8288;&rsquo;&#8288;s Shuttle Sheet magazine</li>

我的 OSX 桌面浏览器都没有出现这种奇怪的行为。 (更新:我曾经使用 OSX v10.7.5 - 当前版本的 OSX确实表现出与 iOS 相同的行为)换句话说,在 OSX 中我可以省略Word Joiner 字符和弯撇号正确显示,带或不带尾随 's'。 是的,我明确声明 &lt;meta charset="utf-8"&gt;

所以我可以解决这个问题,但我不应该这样做;每次我使用撇号时都必须对此保持警惕是很痛苦的,它使 HTML 变得更加混乱和晦涩。有谁知道这里发生了什么?

【问题讨论】:

  • 我将渲染输出添加到您的问题中,并且除了我的 Mac 之外,我在运行 iOS 10 的 iPhone 和运行 iOS 9 的 iPad 上都看到了预期的卷曲撇号 - 全部使用 Safari。也许堆栈溢出正在改变一些东西。可能有助于发布指向演示问题的真实 URL 的链接。
  • @rmaddy——我认为发布渲染输出没有意义,因为问题不会出现在桌面浏览器中,而只会出现在 iOS 中。这就是我附上 iPhone 截图的原因。我正在运行 iOS 9.3.5,所以也许他们在 iOS 10 中修复了这个问题。
  • 很多人在 iOS 设备上使用 SO。我经常这样做。

标签: html ios macos punctuation


【解决方案1】:

显然,这是 Alegreya Sans 字体本身的问题,而不是任何浏览器或操作系统:

https://ask.libreoffice.org/en/question/27606/why-does-libreoffice-replace-alegreya-sans-curly-quote-with-its-regular-quote/

根据最终受访者的说法,字体铸造厂在 2014 年解决了这个问题,但我的网站作为 GoogleFont 链接到它,所以它在 2016 年没有在这里修复。我想我只能忍受我的“Word细木工”杂牌。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-11
    • 1970-01-01
    • 1970-01-01
    • 2010-11-30
    • 1970-01-01
    • 1970-01-01
    • 2011-10-06
    • 1970-01-01
    相关资源
    最近更新 更多