IE9默认不打印背景图像。是否可以告诉ClientBundle所有图像都应该是真实元素,而不是伪造的CSS背景图像?

最佳答案

这取决于ClientBundle的生成方式,以及根据ImageResource构造图像的方式。

对于所有浏览器,除了IE6和IE7,By defaultClientBundle s的ImageResource s均作为data: URL生成,它们将像ImageBundle一样使用拼版图像。但是,在IE8和IE9中,您必须确保选择适当的排列,因为它们具有兼容模式,可能会使它们看起来像IE6或IE7。检查IE开发人员工具中使用的模式(按F12打开它们)。

给定一个内联的或外部的ImageResource(使用data:http:// URL,但不使用捆绑的AKA拼接图像),则可以使用ImageResourcegetSafeUri()作为src元素的<img>属性。
不幸的是,当您将ImageResource传递给ImageAbstractImagePrototype时,GWT将无条件地使用所谓的剪切图像(用于捆绑图像的技术,基于CSS背景图像)。我们称其为错误。

07-21 22:40