Html 如何在CSS中执行线性减淡?
问题: 子元素及其容器都具有透明的bg颜色。如果子元素位于容器内,则子元素的颜色将基于父元素的颜色计算。我应该做些什么来保持两者的透明度,同时使子bg颜色与我指定的完全相同 例如: 我有一个全屏背景图像 和一个Html 如何在CSS中执行线性减淡?,html,css,user-interface,web-frontend,Html,Css,User Interface,Web Frontend,问题: 子元素及其容器都具有透明的bg颜色。如果子元素位于容器内,则子元素的颜色将基于父元素的颜色计算。我应该做些什么来保持两者的透明度,同时使子bg颜色与我指定的完全相同 例如: 我有一个全屏背景图像 和一个div,其中包含子元素 <div class="container"> <input class="mask-moderate__input" /> <button class="mask-moderate__button"></butto
div
,其中包含子元素
<div class="container">
<input class="mask-moderate__input" />
<button class="mask-moderate__button"></button>
</div>
每种样式都定义了一个rgba背景
这也许可以从某种程度上描述情况。左边的“颜色2”是我想要的,因为我没有把它放在容器中,它的颜色rgba(90,90,90,0.35)
是直接根据背景计算的。但是如果我在div中写入元素(如在标题栏中),bg颜色将根据div的bg colorrgba(55,55,55,0.35)
计算,这不是我想要的。
可能的解决方案:
如果答案没有帮助,请在评论中告诉我,我将删除此选项。
但我的理解是,您希望您的子组件保留其背景色,并仅在不影响子组件背景色的约束下使用父组件的透明背景。
这个答案涵盖了孩子和父母背景色是否都没有透明度的问题。这意味着它将涵盖解决方案,如果孩子们有坚实的背景,那么它是完美的 但是,如果两者都有透明背景,那么您可能必须参考以下内容:
.flex容器{
显示器:flex;
背景图像:线性渐变(向右,rgba(255,0,0,0),rgba(255,0,0,1));
}
.flex容器>div{
背景图像:线性渐变(向右,rgba(0255,0,0),rgba(0,0,20,0.3));
利润率:10px;
填充:20px;
字体大小:30px;
}
1.
2.
3.
你能澄清你想要的效果吗?用透明的颜色填充容器,除了放置元素的区域。你能画出它的样子吗?很抱歉没有说清楚。我更新了图片,希望它有助于澄清我的目的。谢谢你的回复,但我认为问题没有解决。我重述了我的问题,希望这次能澄清。@ZenasChen你看到了吗?有帮助吗?是的。我想你链接中提到的混合模式
启发了我。我可能需要编写单独的类来处理这种覆盖。尽管如此,我还是希望有更简单的解决方案,在那里我可以使用一个统一的类集。谢谢大家!@ZenasChen如果将透明度视为me州共享的链接,则会出现颜色差异。另外,mix-blend模式
很好使用,但要注意它的支持。