首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >css覆盖使背景不透明

css覆盖使背景不透明
EN

Stack Overflow用户
提问于 2013-12-17 08:34:52
回答 1查看 507关注 0票数 1

我有这个CSS代码:

代码语言:javascript
复制
.overlay {
    background:#666666;
    opacity:0.7;
    filter: alpha(opacity=70);
    position:fixed;
    width:100%;
    height:100%;
    text-align:center;
    top:0px;
    left:0px;
    z-index:1000;
}

这使得我的div适合整个页面并且是不透明的。

下面是我的html:

代码语言:javascript
复制
<div id="overlay" class="overlay">
     <img src="http://www.example.com/images/loading.gif" alt="Loading" width="25%" style="margin-top:5%;" />
     <br />
     <h1>Loading...</h1>
</div>

我怎样才能保持css的原样,同时又不让div中的图像和文本不透明呢?

http://jsfiddle.net/4rvrt/

EN

回答 1

Stack Overflow用户

发布于 2013-12-17 09:12:19

正如davidpauljunior建议的那样,你必须在css中删除不透明度的显式声明,并在css中执行background:rgba(0,0,0,0.4);,以便只给出背景div较低的不透明度。在您的示例中,img和header是背景div的子级,因此将具有与背景div相同的显式不透明度,并将显示为灰色而不是黑色。为了让gif有一个透明的背景而不是白色,你必须确保gif本身在保存时有一个透明的背景,我建议把它放在一个更高的z索引上,这样它的alpha通道就不会干扰背景的div alpha。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20623763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档