html css里设置div为50%透明,为div里面的img添加opacity:1;不透明,但显示的结果img也是透明的,

 我来答
匿名用户
推荐于2018-03-01
展开全部
你外面的DIV都透明了。那么他包含的所有元素都是透明的。你可以这么做
<div style="position:relative">
<div style="opactiy:.5;position:absulot;left:0;top:0;width:100%;height:100;">这是你要透明的DIV</div>

<img src="" style="position:absulot;left:0;top:0;width:100%;height:100;"> /><!--这个是不透明的-->

</div>
当然这种方式一点都不理想
最好的方式当然是设置

外面这个DIV 背景“色”为透明。而不是他本身透明rgba(134, 62, 62, 0.39)
如果是图片就是第一种方式。
网海1书生
科技发烧友

2018-02-28 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26225

向TA提问 私信TA
展开全部

透明属性是强制继承的,也就是说透明层内的子元素也必然是透明的。

解决方法:把div和img分别放在平等关系的两个层中(也就是说img不再是被div包含的),然后div设为透明,再把img通过绝对定位覆盖在div上。

还有一种办法就是用透明色来代替透明属性,比如:

<div style="background-color:rgba(255,128,128,0.5)"><img src="..."/></div>

不过如果div中是背景图片而不是单纯的填充色,那这种方法就无效了。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
0800308114
推荐于2016-03-04 · TA获得超过973个赞
知道小有建树答主
回答量:1162
采纳率:100%
帮助的人:1021万
展开全部
如果要实现透明边框,子元素不透明,那么就要用这个组合:{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3f000000',endColorstr='#3f000000');background-color:rgba(255, 255, 255, 0.3)},但要注意这两个属性中的颜色,透明度一定要一致,这个兼容性最高,效果也最好。
startColorStr:可选项。字符串(String)。设置或检索色彩渐变的开始颜色和透明度。
其格式为 #AARRGGBB 。 AA 、 RR 、 GG 、 BB 为十六进制正整数。取值范围为 00 - FF 。 RR 指定红色值, GG 指定绿色值, BB 指定蓝色值,参阅 #RRGGBB 颜色单位。 AA 指定透明度。 00 是完全透明。 FF 是完全不透明。超出取值范围的值将被恢复为默认值。
取值范围为 #FF000000 - #FFFFFFFF 。默认值为 #FF0000FF 。不透明蓝色。
EndColorStr:可选项。字符串(String)。设置或检索色彩渐变的结束颜色和透明度。参阅 startColorStr 属性。默认值为 #FF000000 。不透明黑色。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zeronxu
2015-03-31 · TA获得超过653个赞
知道小有建树答主
回答量:299
采纳率:35%
帮助的人:102万
展开全部
img,继承了opacity属性,这个解决方法就是position把img定位在div上。图片不能放在opacity属性的div中。不考虑老浏览器的话,改用background:rgba();实现div透明就不会出现继承的问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式