CSS怎么取消对父元素属性的继承

<div id="aa">
<div id="bb"></div>
<div id="cc"></div>
<div id="dd"></div>
</div>

aa设置了CSS属性透明了,然后bb,cc,dd都透明了...怎么让bb,cc,dd都不继承aa的所有CSS属性?

其他属性还行,透明这个属性继承了取消不了。要实现这种效果我见过的办法有3个,其中1、3是肯定有效的,2不很靠谱,你自己琢磨:

1.模拟div全部在aa里面,把bb、cc、dd都提出来不套在aa中,把aa设置透明属性,然后把bb、cc、dd用css定位属性position定位到看上去在aa里面即可。

2.这个是个传说中的方法:bb、cc、dd任然套在aa中,给bb、cc、dd加上相对定位属性:position:relative;这个办法我从来没试成功过,可能容易和其他属性冲突就无效了。

3.aa不设置透明度,在ps里面做半透明的图片保存为png24格式,然后用作aa的背景;但这样产生了个问题,FF、OP及IE高版本都支持png图片透明,在IE6下面又不支持了,所以IE6下你看到aa的背景将是灰色的,不过这个问题好解决,你自己百度下:ie6 png透明,即可。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-10-24
解决css透明属性只需把子元素设置成相对定位position:relative
把你的
<div id="bb"></div>
<div id="cc"></div>
<div id="dd"></div>
都加上position:relative属性就可以了。
第2个回答  2018-05-05
您好,你可能在理解是有点偏差。

这个问题不是继承的问题。
你的最大的盒子都透明了,里面的所有东西都会看不见。就像你把一个大箱子藏起来了,你说你只是藏的箱子,没有藏箱子里面的东西,但为什么找不到大箱子里的东西。这个是理解的问题。
最终你想实现什么效果,可以再更具体地描述下
第3个回答  2011-10-21
不能你这样布局
<div id="fuji">
<div id="aa"></div>
<div id="bb"></div>
<div id="cc"></div>
<div id="dd"></div>
</div>
然后给fuji相对定位,给aa.,bb,cc,dd绝对定位就好了
第4个回答  2011-10-21
那是就近原则,bb,cc,dd里写样式就不会了
相似回答