css父元素透明度(opacity)对子元素的影响
2017-12-21 16:40
295 查看
首先子元素会继承父元素的透明度:
设置父元素opacity:0.5,子元素不设置opacity,子元素会受到父元素opacity的影响,也会有0.5的透明度。
其次子元素的透明度是基于父元素的透明度计算的:
设置父元素opacity:0.5,即使设置子元素opacity:1,子元素的opacity:1也是在父元素的opacity:0.5的基础上设置的,因此子元素的opacity还是0.5。
解决办法:
利用CSS3属性rgba(即red+green+blue+alpha的颜色),
例如background-color:rgba(0,0,0,0.5)
但是IE7/8不支持此属性,可按如下方法写:
父元素div要写如下:
background-color: rgba(0,0,0,0.5)!important;
background-color: #000;
filter:Alpha(opacity=50);
子元素div加个定位position:absolute/relative即可。
设置父元素opacity:0.5,子元素不设置opacity,子元素会受到父元素opacity的影响,也会有0.5的透明度。
其次子元素的透明度是基于父元素的透明度计算的:
设置父元素opacity:0.5,即使设置子元素opacity:1,子元素的opacity:1也是在父元素的opacity:0.5的基础上设置的,因此子元素的opacity还是0.5。
解决办法:
利用CSS3属性rgba(即red+green+blue+alpha的颜色),
例如background-color:rgba(0,0,0,0.5)
但是IE7/8不支持此属性,可按如下方法写:
父元素div要写如下:
background-color: rgba(0,0,0,0.5)!important;
background-color: #000;
filter:Alpha(opacity=50);
子元素div加个定位position:absolute/relative即可。
相关文章推荐
- [转]设置元素透明度,div内子元素不透明opacity
- 在Firefox中设置元素透明度:-moz-opacity
- CSS 设置背景透明度,不影响子元素
- 设置元素透明度,子元素不透明opacity
- I do not want to inherit the child opacity from the parent in CSS(不想让子元素继承父元素的透明度)
- css设置透明度不影响子元素
- 改变元素透明度opacity
- opacity 元素的透明度
- 关于子元素继承父元素透明度(opacity)的解决方法
- 改变父元素的透明度,不影响子元素的透明度—css
- 关于子元素继承父元素透明度(opacity)的解决方法
- 浅谈设置父元素透明度不影响子元素透明度
- css 只改变父元素的透明度,不改变子元素透明度rgba+opacity
- 子div设置margin-top后会影响父元素
- margin-top越界以及所有子元素浮动后父元素高度为0且影响后续元素的问题。
- 关于margin、padding 对内联元素的影响
- navigationBar的透明度translucent、layout的影响
- 有关opacity或RGBA设置颜色值及元素的透明值
- CSS常见问题解决002——opacity将子元素都变透明了
- opacity/rgba()设置透明度问题