我有一个包含文字的div放在半透明背景上。我想让这个div的底部逐渐消失。
我使用了渐变来实现这个效果。在非半透明背景下,它可以正常工作,没有任何问题。
#fadeout {
position: absolute;
bottom: 0;
width: 100%;
height: 50%;
background: -webkit-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
background-image: -ms-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
background-image: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
background-image: -moz-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
background-image: -o-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
pointer-events: none;
}
我做了一个fiddler展示我想要做的事情:https://jsfiddle.net/ytuxn9Lu/6/(链接已编辑以添加随机背景图像,请参见编辑)。
问题在于渐变覆盖层与背景合并,因此结果不是我想要的。
我该怎么做才能实现这个效果?
谢谢!
编辑:为了添加更多信息,在实际应用中,
body
具有图像背景。 #parent
div具有半透明背景,#fadeout-parent
div包含文本和fadeout
div。
因此,解决方案应该适用于任何背景颜色/图像(如果可能)。