这在IE9,Firefox和Chrome中看起来很棒,但在IE8中,它看起来都很抢眼。关于这个的任何想法?我使用Thesis主题在WordPress上。我正在使用custom.css进行编辑。
我的网站是:http://www.7637olympia.com/
您能否建议如何使其与IE8以及其他浏览器一起使用?
答案 0 :(得分:2)
要在IE中模拟RGBA和HSLA背景,您可以使用具有相同开始和结束颜色的渐变滤镜(Alpha通道是HEX值中的第一对):
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#4cffffff', endColorstr='#4cffffff');
或使用大小为1x2而不是1x1的.png
图片。
因为当页面上的任何其他元素使用“-ms-filter”drective进行Alpha透明度时,Internet Explorer 8无法正确执行1x1像素半透明背景图像的重复
答案 1 :(得分:2)
我认为自从IE7以来,支持css规则filter:alpha(opacity=x);
以避免使用半透明的png。那不是这样吗?
在您的网站中,您将使用:
.custom #page {
background-color: #000;
filter:alpha(opacity=50);
background-color: rgba(0, 0, 0, 0.5);
border-radius: 10px 10px 10px 10px;
padding-top: 5px;
}
据我了解,IE将忽略rgba值并使用两个更高的规则来获得类似的效果。
在元素上使用不透明度(在较新的浏览器中)的一个缺点是它将其设置为整个元素,而不仅仅是背景颜色,因此所有文本和边框等都是半透明的。但我至少会尝试上面的内容,看它是否足够接近。
请记住:人们不升级到更高版本的IE(或转移到FF或Chrome)的唯一原因是因为我们竭尽全力确保设计在这些过时的浏览器中看起来很好。如果有足够的网站看起来像狗屎,他们最终会认为这不是网站,这是他们的旧浏览器。所以不要失去太多的时间和精力来支持从过时的IE过时的过慢转变。
答案 2 :(得分:0)
IE8不支持rgba颜色。如果您希望它在IE8中工作,请创建一个具有相同不透明度的小png(除1x1像素之外的任何其他大小)并将其作为背景应用于div。或者,您可以使用仅IE8样式表并设置除白色之外的其他背景颜色。