如何让自动连字符在 Edge 88 中工作?

How to get auto hyphens working in Edge 88?

hyphens 属性 似乎在 Edge 中不起作用。 caniuse.com 说它应该与我拥有的 Edge 88 一起使用。但它不起作用。添加 -ms- 供应商前缀,它在 Internet Explorer 中有效,但在 Edge 中根本无效。 (奇怪的是任何东西都在 IE 而不是 Edge 中工作。)在 Edge 中唯一有效的是用软连字符到处膨胀你的 HTML (­) - 而没有 CSS 是必需的。 Buuuuuut - CSS hyphens:auto 自动添加连字符而不需要 ­。所以 - caniuse.com 错了吗?是否有使自动连字符在 Edge 中工作的技巧?

Edge 88 不支持 hyphens:auto。您可以尝试 CSS 演示:this page in Edge 88. Besides, the Browser compatibility table 中的连字符 也显示只有 Edge 12+(Edge Legacy)支持它。所以也许 caniuse.com.

有问题

作为变通方法,您可以在 Edge 88 中使用 Hyphenopoly.js. It's a JavaScript-polyfill for hyphenation in HTML: it hyphenates text if the user agent does not support CSS-hyphenation at all or not for the required languages and it is a Node.js-module. You can test the example,效果很好:

至少从 95 版开始,Edge chromium 似乎终于支持自动连字符,而无需像 Hyphenator 或 Hyphenopoly 这样的第三方库。

这里是一个使用修改版 mdn 测试的小测试(没有害羞的实体)

<html>

  <head>
    <style>
      div {
        hyphens: auto;
        border: 1px dashed black;
      }
    </style>
  </head>

  <body>
    <div style="width: 55px;" lang="en">An extremely long English word</div>
  </body>

</html>