为什么 CSS3 的 hsl 色彩模式很少被使用?

发布于 2022-09-01 06:37:54 字数 84 浏览 33 评论 0

color:hsl(120,65%,75%)

色相,饱和度,亮度的hsl记法相比rgb更难理解吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

瞄了个咪的 2022-09-08 06:37:54

可能是历史原因。毕竟w3c规范中,最早出现的颜色空间是rgb,而且基于加法原则的rgb颜色空间对显示器是更加友好的,因为显示器的信道刚好是rgb三通道。

相对应的,cmyk则是基于减法原则的颜色空间,由于颜料的物理混合不可能完全均匀,以及环境光问题,cmyk实际应用上可能与对应的rgb空间颜色相比要更暗(比如同一幅画的印刷品比显示品往往要显得灰暗)。

不过rgb/rgba并不是对人类,尤其是艺术家友好的颜色。如果你学过艺术,你肯定经常说这是什么颜色、什么明度、什么纯度(饱和度),而不会说这个颜色有多少阶的蓝、多少阶的红。如果有人直接用css搞创作的话,这些hsl属性还是能帮忙的。而且,hsl在表达明度方面确实比rgb更准确,当然,这个“准确”是物理层面的,数学层面上,rgb、cmyk、hsl这三个颜色空间当然可以相互转换。

再一个就是,hsl颜色空间可以配合css3动画。比如同色相从明到暗的变化,显然hsl更方便表达一些。

影视后期特效制作方面,hsl颜色空间用得更多一些,不知道以后css动画变得像美国科幻大片这样复杂了,会不会也大规模应用hsl。

最后吐槽:其实w3c还不如把yuv颜色空间单位也列入标准呢……

九八野马 2022-09-08 06:37:54

难道不是因为兼容性?

煮茶煮酒煮时光 2022-09-08 06:37:54

因为页面都是从PSD等设计稿上过来的,如果是颜色值的话,就直接通过取色软件获取,一般都是十六进制的颜色。现在为了一些透明的方便,而增加了一个RGBA的方式来表示。所以这两种才会比HSL的方式要流行很多。

然后还有一个就是HSL的方式,需要对H、S、L这三种颜色模式有一定的了解才好操作,具体还是要根据项目需求来确定用什么颜色值比较好。

这里有一个是曾经很早之前我用HSL的方式来做的小东西,代码很烂……
http://lab.tianyizone.com/color.html

暖树树初阳… 2022-09-08 06:37:54

兼容性,还有透明度,RGB和RGBA秒杀HSL

北笙凉宸 2022-09-08 06:37:54

RGB模式,我可以是很容易地想象各种颜色比例,知道想红一点怎么做,蓝一点怎么做,
你让我记色相,怎么弄?

青衫负雪 2022-09-08 06:37:54

rgb和rgba是主流的吧,W3C推荐这个

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文