css 只改变父元素的透明度,不改变子元素透明度rgba+opacity

给元素加透明度时,通常写法为:opacity:0.5,filter:alpha(opacity=50);

我们通常也会遇到,在给父元素背景设置透明度时,子元素内容继承了父元素的透明度。

如何让子元素脱离父元素的透明度?有如下几种方法:

1.父元素div,直接使用透明度的图片做背景。

2.父元素div(设置为相对定位),兄弟div1(设置为绝对定位)背景正常加透明度即可,兄弟div2(设置为绝对定位),层级关系高于div1即可。

3.利用CSS3属性rgba(即red+green+blue+alpha的颜色),例如 outline: 0px; padding: 0px; margin: 0px 0px 16px; font-size: 16px; color: rgb(79, 79, 79); line-height: 26px; text-align: justify; word-break: break-all; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif, SimHei, SimSun;">但是IE7/8不支持此属性,可按如下方法写:

父元素div要写如下:background-color: #000;filter:Alpha(opacity=50);

子元素div加个定位position:absolute/relative即可。