7

我可以理解将它们用于非官方的实验性事物(即不在 CSS3 规范中)以防止名称冲突,但为什么需要在阴影等前缀?

每个供应商不应该按照 CSS3 规范实现相同的效果吗?

编辑:一旦 CSS3 完成,前缀会消失吗?我只是好奇为什么有些功能有前缀,而有些没有,而在所有主要浏览器上的效果似乎都是一样的。

4

2 回答 2

11

众所周知,CSS 规范需要很长时间才能达到候选推荐阶段,在该阶段,它们被认为已准备好实施。即便如此,如果在实施和测试阶段发现问题,CR 可以反弹回 WD(这是 CSS2 的一个问题,最终变成了CSS2.1)。

由于行业需要技术的快速发展,供应商必须在标准成熟之前尝试实施标准。这些实现通常被认为是实验性的和非最终的,这让我们回到了你所说的关于它们被用于实验性功能的内容。

一旦 CSS3 完成,前缀会消失吗?

最初,一旦模块及其实现最终确定,前缀就消失了(CSS3 本身从未最终确定,因为它一直在增长)。如今,正在采取措施几乎完全消除使用前缀来开发技术,因为它们被供应商和作者滥用,并导致无法预料但严重的互操作性问题;请参阅Chromium/Blink这篇 CSSWG 博客文章

于 2013-11-15T06:47:38.000 回答
4

之前有人问过这个问题,但简短的回答是 CSS3 不是成品。CSS 2.1 直到 2011 年才发布,只有少数 CSS3 模块达到了正式推荐的水平,所以现在谈论一个普遍实施的 CSS3 规范还为时过早。值得庆幸的是,现代浏览器制造商正在帮助推动事情向前发展,并正在帮助制定遵循现实世界实践的标准。随着它们更接近通用标准,前缀被删除。

于 2013-11-15T06:48:33.090 回答