IE过滤器抗锯齿问题

时间:2011-03-17 06:55:11

标签: javascript jquery html dom

所以我有一个包含大量图像的页面。我有一个函数淡出这些图层使用IE的不透明度过滤器通过javascript。

现在,当我淡入这些元素时。我必须使用背景图像或背景颜色设置特定元素(应用了不透明度滤镜)(以防止清晰类型字体的抗锯齿,读取此更多http://www.jonathancross.com/projects/Ugly_font_anti-aliasing_problem_in_Internet_Explorer_6_7_and_8.html)。

现在我的问题是:

  1. 对于一组元素,有没有比用于为每个元素设置背景图像/背景颜色的案例结构更好的解决方案?
  2. 有些文字框看不清楚,似乎与整体背景图片集合在一起(背景图层由1x1像素图像组成,必要时会重复显示)
  3. 提前致谢!

3 个答案:

答案 0 :(得分:2)

我使用了一个技巧...如果文本背后的背景是你可以选择一个在合理程度上匹配它的纯色,你可以使用以下一对CSS规则做faux-对文本的抗锯齿,仅在IE中:

background-color:#CCCCCC; / 选择与您的背景相匹配的颜色 / 滤波器:的progid:DXImageTransform.Microsoft.Chroma(颜色= '#CCCCCC'); / 在这里使用相同的颜色 /

答案 1 :(得分:1)

  1. 你必须在每个元素上定义背景,据我所知,没有得到回合。你可以用css做这个,比如

    .mydiv p {background:#fff}

  2. 使用1x1 px背景会导致重复出现问题。使用2x2 px不会。

答案 2 :(得分:1)

我通过在页面上的每个元素上附加1.0的Opacity过滤器来完全禁用IE中的抗锯齿功能来解决这个问题...

好吧,所以它看起来很讨厌 - 但至少看起来一切都是这样(而IE6 / 7无论如何都是讨厌的^ _ ^)。