2011-08-30 115 views
3

我遇到了一个非常奇怪的错误:有一个div(#inner)放置在另一个(#container)内。如果我给IE8中的内部元素设置不透明度,内部div(#inner)的字体颜色将与外部(#container)元素的背景颜色相同。IE8:CSS不透明度过滤器结果字体颜色变得与背景div的背景颜色相同

有没有人遇到过这种行为?

有问题的CSS网站: http://beta.sminktanfolyamok.hu

这些部分的CSS部分:

div#container { 
    width: 940px; 
    margin-left: auto; 
    margin-right:auto; 
    border:1px solid #ccc; 
    box-shadow: 3px 3px 10px rgba(10,10,10,0.4); 
    -moz-box-shadow: 3px 3px 10px rgba(10,10,10,0.4); 
    -khtml-box-shadow: 3px 3px 10px rgba(10,10,10,0.4); 
    -webkit-box-shadow: 3px 3px 10px rgba(10,10,10,0.4); 
    position:relative; 
    padding-left:10px; 
    padding-right:10px; 
    padding-top:1em; 
    background-image:url('images/navigation.jpg'); 
    background-repeat:no-repeat; 
    background-position:center left; 
    background-color: #000; 
} 

div#inner { 
    background-color: #999; 
    color:#222; 
    opacity: 0.7; 
    -moz-opacity: 0.7; 
    -khtml-opacity: 0.7; 
    -webkit-opacity: 0.7; 
    filter:alpha(opacity=70); 
} 
+0

我偶然发现了一种解决方法,明天我会发布它。 – petermolnar

回答

1

的解决方案是一样的ClearType的错误:我已经添加

position:relative 

到所有相关图层,问题就解决了。