Chrome 71 的新功能

在 Chrome 71 中,我们添加了对以下内容的支持:

还有更多功能!

我是 Pete LePage。我们来深入了解一下 Chrome 71 中面向开发者的新变化!

更新日志

本文仅介绍了一些主要亮点,如需了解 Chrome 71 中的其他变更,请访问以下链接。

使用 Intl.RelativeTimeFormat() 显示相对时间

Twitter 显示最新帖子的相对时间

许多 Web 应用使用“昨天”“两天后”或“一小时前”等短语来指明事件发生或将要发生的时间,而不是显示完整的日期和时间。

显示相对时间已变得非常普遍,因此大多数常见的日期/时间库都提供了本地化函数来为我们处理此问题。事实上,在构建的几乎每个 Web 应用中,我都会首先添加 Moment JS 库,以便实现此目的。

Chrome 71 引入了 Intl.RelativeTimeFormat(),该函数会将工作转移到 JavaScript 引擎,并支持对相对时间进行本地化格式设置。这可以略微提升性能,这意味着,只有在浏览器尚不支持新 API 时,我们才需要将这些库用作 polyfill。

const rtf = new Intl.RelativeTimeFormat('en');

rtf.format(3.14, 'second');
// → 'in 3.14 seconds'

rtf.format(-15, 'minute');
// → '15 minutes ago'

使用它很简单,只需创建一个新实例并指定语言区域,然后使用相对时间调用 format 即可。如需了解完整详情,请参阅 Mathias 的 Intl.RelativeTimeFormat API 博文。

为垂直文本指定下划线位置

下划线不一致的竖排文本

当中文或日文文本以垂直排版方式显示时,浏览器下划线的位置不一致,可能位于左侧或右侧。

在 Chrome 71 中,text-underline-position 属性现在接受 leftright,作为 CSS3 文本装饰规范的一部分。CSS3 文本装饰规范添加了几个新属性,允许使用户指定要使用的线条类型、样式颜色位置等内容。


.left {
  text-underline-position: left;
}

.right {
  text-underline-position: right;
}

语音合成功能需要用户启用

当我们访问某个网站,而它突然开始与我们对话时,我们都会感到惊讶。自动播放政策可防止网站自动播放音频或有声视频文件。有些网站尝试改用语音合成 API 来解决此问题。

从 Chrome 71 开始,语音合成 API 现在需要在页面上获得用户的某种启用,才能正常运行。这与其他自动播放政策保持一致。如果您在用户与网页互动之前尝试使用它,则会触发错误。

const utterance = new window.SpeechSynthesisUtterance('Hello');
utterance.lang = lang || 'en-US';
try {
  window.speechSynthesis.speak(utterance);
} catch (ex) {
  console.log('speechSynthesis not available', ex);
}

最糟糕的情况莫过于访问某个网站时,您和坐在您旁边的同事都感到惊讶。

等等!

当然,这只是 Chrome 71 中面向开发者的部分变更,还有许多其他变更。

  • Element.requestFullscreen() 方法现在可以在 Android 上进行自定义,您可以选择让导航栏可见,也可以选择完全沉浸式模式(在用户执行手势之前不显示任何用户代理控件)。
  • 模块脚本请求的默认凭据模式已从 omit 更改为 same-origin
  • 为了使 Chrome 与 Shadow DOM v1 规范保持一致,Chrome 71 现在会计算 :host():host-context() 伪类以及 ::slotted() 参数的专属性。

Chrome Dev Summit 视频

如果您错过了 Chrome 开发者峰会,或者您参加了峰会,但没有观看所有演讲,请访问我们的 YouTube 频道,观看 Chrome 开发者峰会 2018 播放列表

Eva 和 Phil 在使用 Service Worker 构建更快速、更弹性的应用中介绍了一些使用 Service Worker 的实用技巧。

Mariko 和 Jake 在 Complex JS-heavy Web Apps, Avoiding the Slow 中介绍了如何构建 Squoosh

Katie 和 Houssein 在速度必备知识:提高网站速度的关键技术中介绍了一些非常实用的技巧,可帮助您最大限度提升网站性能。

Jake 掉落了蛋糕。Chrome DevSummit 2018 播放列表中还有许多其他精彩视频,欢迎观看。

订阅

如需及时了解我们的最新视频,请订阅我们的 Chrome Developers YouTube 频道,这样每当我们发布新视频时,您就会收到电子邮件通知。

我是 Pete LePage,Chrome 72 发布后,我会立即为您介绍 Chrome 中的新变化!