更易访问的 Portals 演示

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200 美元的免费额度!

的重点 <portal> 元素(Chrome Canary 中的旗标后)是您可以预加载另一个完整的页面(如 <iframe>),然后使用 API将其动画化到当前页面。因此,“单页应用程序”(SPA)的功能,但原生实现。我认为这很酷。我通常是 JavaScript 框架的粉丝,当它们通过帮助完成其他难以完成的事情(例如花哨的状态管理、高效的重新渲染和组件组合)来提供价值时。但是,如果仅仅为了 SPA 的特性而使用框架,那是不幸的。当人们所做的事情与本机标准化解决方案保持一致时,Web 平台才处于最佳状态。

但是,当事情变得无法访问时,Web 平台就不处于最佳状态。Steve Faulkner 撰写了 “关于 portal 元素的简短说明”,其中他指出了 portal 元素在当前状态下的七个问题。 这是一个演示,其中解决了一些问题。我想,如果很多问题可以通过外部修复,这在某种程度上是一个实现问题,但我认为其中很多问题无法修复(例如后退按钮行为、加载的页面是否成为可访问性树的一部分等)。

这是一个基本行为的视频

直接链接 →