2013-02-03 56 views
0

嗨,你可以看看下面的例子(代码和链接),让我知道为什么透明div内的其他元素的颜色也改变了,我怎么可以防止这种情况?我的意思是我喜欢ti有白色的文本框和字体颜色,因为我已经指定了,但现在它们看起来灰色!为什么文本的颜色会在透明的DIV标签中变化?

Here is the link

你可以从链接的文本框里面输入一个颜色变成灰色看看! 这个代码:

.test 
{ 
    color:#FFF; 
    border: solid 2px #2d2d2d; 
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    border-radius: 5px; 
    height: 180px; 
    width: 250px; 
    filter: alpha(opacity=60); 
    opacity: 0.60; 
    background: #000; 
} 

回答

2

元素上使用opacity会影响到所有的子元素。这就是为什么你的文字看起来灰色的原因。为了防止这种情况使用RGBA颜色,并同时设置它的透明度值。

我创建了一个小的demo,它显示了差异。

这里的代码为background

background: rgba(0, 0, 0, 0.6); /* The last value declares the transparency */ 

希望这有助于!

+0

谢谢克里斯托弗,这正是我一直在寻找 – Suffii

1

白色变成灰色,因为你是用在黑色背景上设置的东西不透明度为60%。删除不透明度规则,它应该看起来像你期待的。

删除这些CSS规则

filter: alpha(opacity=60); 
opacity: 0.60; 
+0

嗨克里斯,谢谢你的评论,但我的问题是如何制止这一点,并保持框的透明度以及。我的意思是我不想删除透明度 – Suffii