下面是设置背景封面的代码,我想设置背景封面的透明度,以便我可以在其上显示一些文字。我得到了如下解决方案,但它不适合我。我没有得到失踪的地方。
style="background: url(images/football_ground.jpg) no-repeat center center fixed;-webkit-
background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;-moz-opacity:.30;
filter:alpha(opacity=30);
-khtml-opacity: 0.3; ">
答案 0 :(得分:4)
目前,CSS不允许更改背景图像的alpha值。如果你想解决这个问题,有几种不同的选择:
<div class="parent">
<div class="background"></div>
<div class="foreground">some text</div>
</div>
答案 1 :(得分:3)
CSS opacity属性设置整个元素的不透明度,而不仅仅是背景。因此,对于 背景和文本内容,您的代码实际上将不透明度设置为0.30。
您可能需要使用2个元素来实现您想要的效果。
答案 2 :(得分:0)
不透明度会影响元素及其后代。
您不需要将其拆分为两个元素,只需使用RGB来实现透明度。 第四个参数alpha设置元素的透明度:
background-color: rgba(0, 0, 0, 0.75);
答案 3 :(得分:0)
现在做到这一点,我们的要求是,图像需要更深色的封面,以便在背景图片更白的情况下,放在图像顶部的白色文字更清晰可见。
我一直使用元素来实现此目的,但是另一种解决方案可能是将其添加到父元素的css中(或在任何需要的地方):
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url("./your_image_url");
甚至可能有更短的方法,但是我在某些地方使用了上面的方法。