0
例:http://jsfiddle.net/NBWmU/1/文本确实在IE7透明背景不抗锯齿/ 8
我用下面的CSS让我的div的背景在尽可能多的浏览器尽可能透明:
background: rgb(255, 255, 255) transparent;
background: rgba(255, 255, 255, 0.6);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99FFFFFF, endColorstr=#99FFFFFF);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99FFFFFF, endColorstr=#99FFFFFF)";
由于某种原因,在透明div上面的IE8文本看起来很尖锐和像素化,而且看起来与普通背景上div外的相同文本完全不同。我还没有在其他浏览器中测试过。
有谁知道我可以强制文本呈现相同的地方吗?我试过使用透明PNG,但这导致了一些其他渲染问题,我希望有另一种方式。
谢谢,跨浏览器透明度似乎是一个恼人的问题。我的页面中的背景是一个图像,我真的需要透明div的大小来适应文本(所以不能只编辑背景图像)。我之前做的是将透明div背景设置为小平铺透明png(这似乎避免了抗锯齿问题),但偶尔会导致整个图像显示为空白。还有什么可以想到的吗? – Flash
如果支持古代浏览器很重要,可以尝试将文本绝对放置在包含透明颜色的空白div的上方(包含文本的元素不得是透明的元素的后缀)。不幸的是,这会产生很多其他的复杂情况,因为你不能依靠div来调整内容的大小,堆叠顺序(z-index)在旧版本的IE中非常麻烦。如果半透明背景真的值得,您应该考虑一些成本/收益方面的考虑。祝你好运! :) –