【问题标题】:Semi-transparent background color in CSS from hex RGB valueCSS中的半透明背景颜色来自十六进制RGB值
【发布时间】:2017-01-26 06:48:08
【问题描述】:

背景:我必须使用提供一些集成 SASS 功能的 CMS:用户可以定义颜色,它们以十六进制值的形式提供给我可以编辑的 SCSS 文件。

问题:我必须使用其中一种颜色的浅色版本作为 div 的背景。 (在具有一定透明度的背景颜色的意义上更亮)。

通常我会这样做

background-color: rgba(r,g,b,a);

但是,如果我没有单一的红色/蓝色/绿色值,而只有组合的十六进制 RGB 值,该怎么办?

应达到的结果示例:

/* user color comes as a variable containing a hex value
   variable: $color
   example value: 00d;
*/

h1{
   background-color: #00d;  /* $color resolves to 00d */ 
}

p{
   background-color: #7e7eed; /* <- this value should be calculated from the variable $color, in this case #00d + opacity 50% */
}
<h1>Title</h1>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

【问题讨论】:

标签: css sass transparency background-color opacity


【解决方案1】:

使用lightenSASS函数

lighten($color, 20%)

如果你想改变你的颜色,使用rgba function

rgba($color,0.8)

demo

【讨论】:

  • 好主意。必须检查 CMS 是否支持
  • 这让我走上了正确的道路,CMS 中提供了类似的功能。谢谢!
猜你喜欢
  • 1970-01-01
  • 2011-04-07
  • 2014-09-22
  • 2012-03-05
  • 2012-06-26
  • 2021-10-06
  • 2019-03-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多