Open cssmagic opened 8 years ago
相信你以前肯定尝试过 CSS 中的半透明颜色,比如 rgba() 和 hsla()。半透明颜色是 2009 年发生的一场重大变革。
rgba()
hsla()
RGBA 与 HSLA 颜色是在 “CSS Color Module Level 3” 这个规范模块中定义的。这个规范的最终确立主要经历了两个阶段。
在 2003 年及以前,这个规范模块叫作 “CSS3 Color Module”,已经推进到了 CR 阶段,但由于缺乏足够的实现,迟迟无法进入接下来的 PR 阶段。(注:关于 CSS 规范的推进流程,参见《Web 标准:是敌还是友》一节。)
这个规范一搁就是好几年。到了 2008 年,CSS 工作组终于坐不住了,决定重新推进这个规范。专家们砍掉了模块中的一些内容,把它倒回了 WD 的状态,重新征求各方意见。接下来的进展就顺利多了:
各浏览器对 RGBA 与 HSLA 颜色的最早支持时间是这样的:
大家可以看到,除了 IE 之外,其它主流浏览器在 2008 年底都已经可以正常显示半透明颜色了。而此时 IE8 都还没有发布。在 IE9 出现之前,IE 浏览器只能借助其私有的滤镜特性实现极为有限的半透明背景色效果。
(暂无)
花絮与注解
第 18 页 · 第一段
RGBA 与 HSLA 颜色是在 “CSS Color Module Level 3” 这个规范模块中定义的。这个规范的最终确立主要经历了两个阶段。
在 2003 年及以前,这个规范模块叫作 “CSS3 Color Module”,已经推进到了 CR 阶段,但由于缺乏足够的实现,迟迟无法进入接下来的 PR 阶段。(注:关于 CSS 规范的推进流程,参见《Web 标准:是敌还是友》一节。)
这个规范一搁就是好几年。到了 2008 年,CSS 工作组终于坐不住了,决定重新推进这个规范。专家们砍掉了模块中的一些内容,把它倒回了 WD 的状态,重新征求各方意见。接下来的进展就顺利多了:
各浏览器对 RGBA 与 HSLA 颜色的最早支持时间是这样的:
大家可以看到,除了 IE 之外,其它主流浏览器在 2008 年底都已经可以正常显示半透明颜色了。而此时 IE8 都还没有发布。在 IE9 出现之前,IE 浏览器只能借助其私有的滤镜特性实现极为有限的半透明背景色效果。
交流与答疑
(暂无)