CSS中不透明度继承问题的处理
关于CSS中不透明度的设置,除了兼容⽅⾯的问题,还有不透明度继承问题,这⾥只讨论下后者。
预备党员转正表态发言那么,
什么时候会发⽣不透明度继承问题?
当⽂档结构中有⽗⼦嵌套关系的时候,并且⽗元素有不透明度属性设置时,会发⽣不透明度继承问题,此时⼦元素也继承了⽗元素的不透明度,并且再另外设置⼦元素不透明度是⽆效的(如果⽗元素没有设置不透明度,⼦元素的设置是有效的)。
钓鱼技巧全攻略下⾯是相关代码和效果图:
CSS部分:
#parent{
height:400px;
width:500px;
background:green;
opacity:0.3;
filter:alpha(opacity=30);/*兼容IE5.5 IE7 IE8,在IETester下测试IE6并不⽀持*/
-moz-opacity:0.3;/*⼀些⽼版本Mozzila*/
-khtml-opacity:0.3;/*⼀些⽼版本Safari*/
}
盔甲骑士>土地租赁税率#child{
height:100px;
width:100px;
background:red;
}
DOM结构部分:
<div id="parent">孕妇饮食注意事项
<div id="child"></div>
</div>
效果图:
图⼀ 图⼆
蒸鲳鱼图⼀为设置不透明度后的效果,图⼆为没设置透明度的效果,可以看到,⼦元素child也具有了⼀定的透明度。
在实际应⽤中,我们有时希望的去是让底层看起来有透明效果,⽽让上层的元素仍为不透明。
女孩心眼多的表现
那么,
该怎么解决?
1、使⽤具有透明效果的图⽚来代替background效果。
2、将⽗⼦元素的嵌套关系改为兄弟关系,并⽤绝对定位及z-index来实现。
如果还有其他⽅法的话,积极留⾔哟~
篮球比赛总结