首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hsl()颜色:单独控制色调、饱和度或亮度

hsl()颜色:单独控制色调、饱和度或亮度
EN

Stack Overflow用户
提问于 2017-02-24 05:36:29
回答 1查看 287关注 0票数 2

是否有可能在今天或任何即将到来的标准中单独控制css中hsl()颜色的色调、饱和度和亮度?使用纯CSS可以做什么,不能做什么,使用jquery可能有哪些替代解决方案?

理想情况下,我希望能够执行类似于下面的操作,或者能够通过其他一些方法()来模仿

我想创建基类:

代码语言:javascript
复制
.color-10 { color-hsl-hue: 10;}
.color-20 { color-hsl-hue: 20;}
.color-30 { color-hsl-hue: 30;}

等。

代码语言:javascript
复制
.saturation-10 { color-hsl-saturation: 10%; }
.saturation-20 { color-hsl-saturation: 20%; }
.saturation-30 { color-hsl-saturation: 30%; }

等。

代码语言:javascript
复制
.luminosity-10 { color-hsl-luminosity: 10%; }
.luminosity-20 { color-hsl-luminosity: 20%; }
.luminosity-30 { color-hsl-luminosity: 30%; }

等。

因此,我们可以为CSS中的任何元素提供一个基色值,例如:

代码语言:javascript
复制
div { color: hsl(50, 50%, 50%); }

用户可以通过组合类轻松地调整颜色:

代码语言:javascript
复制
<div class="luminosity-30 hue-120">...</div>

它将自动呈现为:

代码语言:javascript
复制
div.luminosity-30.hue-120 { color: hsl(120, 50%, 30%); }

而且,我也希望能做这样的事情:

代码语言:javascript
复制
div h2 { color-hsl-luminosity: -20%;}
div p { background-color-hsl-saturation: +10%;}
div strong { background-color-hsl-hue: +50;}

因此,无论<div>的基色是什么,<h2>元素的背景都会稍微暗一些,等等。

也许我可以用jquery来模拟它,但是如何得到单个色调、亮度、饱和值的当前计算值呢?

我在想这样的事情:

代码语言:javascript
复制
 var hue = $(div).hsl-hue();
 hue += 20;
 $(div h2).hsl-hue(hue);
EN

回答 1

Stack Overflow用户

发布于 2017-02-24 05:48:14

这是CSS过滤器。我做了一些和你说的类似的东西:

CSSInstaglam

演示

但是 -- IE支持基本上不存在。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42431501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档