详解CSS-opacity子元素继承父元素透明度的解决方法
建站知识 2021-07-03 07:55www.168986.cn长沙网站建设
在写项目页面的过程中,遇到子元素继承父元素透明度的问题,查找了好多文档给出的都是第一种方法,这种方法主要解决简单场景的,而对于设置复杂的background时,该方法不再适用。
分析原因
父元素背景颜色设置透明度opacity0.5,子元素会继承,给子元素设置opacity1,子元素的透明度也是在父元素0.5的基础上设置的。
第一种方法
父元素背景颜色设置透明度时,避免使用background#000;opacity0.5,建议使用backgroundrgba(0,0,0,0.5)
第二种方法
如果设置背景色为渐变色等这种复杂背景,第一种方法就不在适用。
background-image: linear-gradient(-180deg, rgba(20,20,20,0.00) 19%, #303030 100%); opacity: 0.5;
因为子元素会继承父元素的opacity属性,我们让它不成为子元素。新增一个子元素,将其绝对定位到父元素位置,然后在该元素上设置背景色与透明度。
<div class="container"> <div class="content"> <p>我是class为content的DIV</p> <p>我的背景是class为background的背景</p> <p>通过相对定位和绝对定位,我把class为background的DIV移动到了我的位置。</p> <p>通过我的较大的z-index浮在了它的上面。 :)</p> </div> <div class="background"></div> </div>
.container { width: 300px; height: 250px; color: #fff; position:relative; } .content { position:relative; z-index:5; width: 100%; height: 100%; overflow: hidden; } .background { background-color: #37a7d7; position:absolute; :0px; left:0px; width:100%; height:100%; z-index:1; /兼容IE7、8 / -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; filter: alpha(opacity=50); opacity:.5; }
参考
到此这篇关于详解CSS-opacity子元素继承父元素透明度的解决方法的文章就介绍到这了,更多相关CSS-opacity子元素继承父元素透明度内容请搜索狼蚁SEO以前的文章或继续浏览狼蚁网站SEO优化的相关文章,希望大家以后多多支持狼蚁SEO!
长沙网站设计
- 如何自己建一个网站 自己想建个网站,怎么建
- 如何制作网站免费建站 创建网站免费注册
- html简单网页代码 html简单网页代码超链接
- dreamweaver网页制作 dreamweaver网页制作模板
- 上海网站建设 上海网站建设制作微信
- 如何制作网站和网页 如何制作一个网页
- html网页制作代码大全 端午节html网页制作代码大
- app开发公司 app开发公司前十名
- html网页制作 html网页制作文字居中
- app制作一个需要多少钱 请人制作一个app多少钱
- 成都网站制作 成都网站制作维护
- 百度建一个网站多少钱 百度做个公司网站要多少
- html+css网页制作成品 web网页制作成品css+javascrip
- html网页制作案例 html网页设计案例
- html+css网页制作成品 web网页制作成品css+javascrip
- 个人网站模板 个人网站模板HTML