为什么 Google Chrome 浏览器使用 -webkit-* 前缀,而 Chrome 运行 在 Blink 上使用(除了 IOS,它们在 webkit 上 运行 )

Why Google Chrome browsers use -webkit-* prefix, while Chrome runs on Blink (except IOS, where they run on webkit)

那么,Blink 团队和 Webkit 是否合作开发新功能?如果不是,为什么两个引擎的前缀相同?

Google Chrome 以前一直使用 Webkit,直到 Chrome 28 被 Webkit 的一个分支 Blink 取代。在使用 Webkit 时,Chrome 可以访问所有 -webkit- 个前缀。

当对 Blink 进行更改时,开发团队决定不向 Blink 引擎添加任何新的供应商前缀。供应商前缀旨在让 Web 开发人员尝试新标准,直到它们被正确实施,并且 Chrome 团队认为这可以通过 enabling/disabling 的 un-prefixed 版本更好地完成浏览器中的功能。 Chromium 网站 states

...instead of enabling a feature by default with a vendor prefix, we will instead keep the (unprefixed) feature behind the “enable experimental web platform features” flag in about:flags until the feature is ready to be enabled by default.

出于兼容性原因,旧的 -webkit- 前缀保留在 Blink 中(删除支持会破坏依赖 Webkit 前缀的站点)。由于上述原因,它们没有被 Blink 特定的对应物替换,并且自 Chrome 28 以来,没有(或将要)添加新的前缀。