CSS 中推出四项新的国际功能

Jack J
Jack J

Chrome 即将支持 CSS 文本模块级别 4 中的四项全新国际化 CSS 功能。此帖子介绍了已发货和即将发货的商品。

  • 从 Chrome 119 开始:日语短语换行与 word-break: auto-phrase 中断。
  • Chrome 120 中的标志后面:使用 text-autospace 属性时的脚本间间距。
  • 正在开发:通过 text-spacing-trim 属性调整中文、日语和韩语 (CJK) 标点符号字距。
  • 针对各种语言使用一致的最小字体大小。

日语短语换行:word-break: auto-phrase

此功能可提高日语文字的易读性;Chrome 119 及更高版本已提供此功能

某些东亚语言(如中文或日语)不使用空格来分隔字词,并且行可以在任何字符处换行,即使位于字词中间也是如此。这是这些语言的正常换行行为,但在标题或诗歌等短文本中,最好在自然短语边界处换行(在日语中,这种边界称为“Bunsetsu”)。

新的 CSS 功能 word-break: auto-phrase 指定应在此类边界处进行换行。

<html lang="ja">
<style>
h1 {
  word-break: auto-phrase;
}
</style>

<h1>窓ぎわのトットちゃん<h1>
分词:自动短语会在自然短语边界处换行。
word-break: auto-phrase 会在自然短语边界处换行。

边界检测由机器学习引擎执行,因此不一定能得到您想要的结果。如果发生这种情况,您可以手动调整可断点。<wbr> 标记或零宽度空格 (&ZeroWidthSpace;) 会强制执行可断点,而零宽度联接器 (&zwj;) 可阻止断点。

窓ぎわの<wbr>トットちゃん
ユーザー<wbr>インターフェース

目前,Chrome 仅通过采用 AdaBoost 机器学习技术的 BudouX C++ 端口在日语版本中支持此功能。如需了解详情,请参阅 Google Developers Japan: BudouX: 読存储分区やすやめの軽めの軽量の分樵店

我们计划在未来版本的 Chrome 中支持韩语和中文。

脚本间间距:text-autospace

以下功能目前位于 Chrome 中的旗帜的后面。如需对其进行测试,请在 Chrome 120 或更高版本中启用实验性网络平台功能标志(位于 chrome://flags/#enable-experimental-web-platform-features 中)。

中文和日语混合了多种文字,包括汉字、拉丁字母和 ASCII 数字;如果是日语,则还使用平假名和片假名。在不同文字和非汉字文字之间切换时,使用小的空格通常有助于提高可读性。

Chrome 计划默认开始插入脚本间间距。这项功能为网络带来了一种广泛应用于印刷材料和提高易读性的常见做法。

新的默认设置会应用小间距,以提高可读性(可通过 text-autospace 进行控制)。
新的默认设置会应用小间距,以提高可读性,这可通过 text-autospace 进行控制。

如果您想停用此行为,可以使用 text-autospace 属性来控制插入间距。

text-autospace: no-autospace;

CJK 标点符号字距:text-spacing-trim

以下功能正在开发中,目的是在 Chrome 中默认启用该功能。

在中文、日语和韩语中,标点字符之间应用字距可提高可读性,并且排版在视觉上更美观。目前,大多数印刷材料和文字处理程序都会采用这种字距调整。

例如,CJK 句号和 CJK 右括号通常设计为在字形空间的右半部分设置字形内部间距,以便每个字符都有恒定的推进。

但是,当这些标点符号在一行出现时,这种字形内部空格就会变得过多。在以下两个示例中,第二个是正确的排版;应移除 CJK 英文句号的右半部分。

标点符号在一行中出现时,应删除中日韩句号的右半部分。
当一行出现标点符号时,应移除 CJK 句号的右半部分。

默认行为通常会提供良好的结果,但开发者可以使用 text-spacing-trim 属性来选择不同的样式,或在某些情况下停用该属性。

为各种语言使用一致的最小字体大小

在 Chrome 118 之前,小于 10px 的字体不会按指定方式呈现,但如果语言是阿拉伯语、波斯语、日语、韩语、泰语、简体中文或繁体中文,系统会将其向上舍入。开发者需要权宜解决方法来呈现较小的文本,例如使用 transform 属性。

从 Chrome 118 开始,我们会为所有语言解除这一限制,使这 7 种语言与其余语言匹配。此更改改进了与其他浏览器的互操作性。

从 Chrome 118 开始,对于阿拉伯语、波斯语、日语、韩语、泰语、简体中文或繁体中文,对于小于 10px 的字体大小,无法按指定方式呈现。
从 Chrome 118 开始,针对阿拉伯语、波斯语、日语、韩语、泰语、简体中文或繁体中文,已解除对于小于 10px 的字体大小无法按指定方式呈现的限制。

互动和分享反馈

如果您对这些功能有任何反馈,请在 crbug.com 上提交问题。