如何让自动连字符在 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>
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>