【发布时间】:2015-11-20 06:54:37
【问题描述】:
我在这里看到了很多关于如何使用 CSS 淡出文本的问题,但到目前为止,所有答案都假设文本下方的元素具有纯色背景。如果文本位于不透明度小于 1(即半透明)的 div 顶部,您将如何淡出文本?运行下面的代码以查看示例。我要做的是以垂直渐变淡出该框中的文本,使字体颜色在顶部为白色,并在到达底部时淡入该框的半透明背景。
注意:即使 div 的背景不透明度发生变化(例如,0.75 而不是 0.5),该解决方案也应该无需修改即可工作。
body {
background: #333;
color: #fff;
}
.box {
width: 320px;
background: rgba(204, 153, 153, 0.5);
border: 2px solid #000;
padding: 1rem;
}
.box > p {
margin: 0;
}
<div class="box">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
【问题讨论】:
-
所以你要放置3个DIV,一个有文字,第二个是棕色半透明的,第三个是黑色的(也是透明的),对吗?
-
@PirateX 我希望代码 sn-p 中的文本淡入与半透明框相同的颜色。
-
我将我的答案修改为我发现的一个示例,该示例演示了我认为您在问什么。