2012-04-08 41 views

回答

0

这取决于你想要做什么。

如果您只想用颜色覆盖图像,那么您可以在顶部将具有所需颜色的半透明PNG作为其背景图像的DIV进行层叠。这里有一个JS小提琴示范:

http://jsfiddle.net/btCfK/

我没有IE 7方便的拷贝来检查,但我敢肯定(不迟于6反正),其将在旧的IE的工作。

本示例对叠加层和图像使用固定大小。通过一些聪明的编码,你可以改变它,并且创建一个基于JavaScript的控件来交换颜色。

如果你想要比这更复杂的东西,没有使用Canvas元素,SVG,或许多JavaScript的一个,它可能不实用。

0

我只是偶然发现了这个问题,我想我会提到CSS filters

目前,只有Chrome完全支持它们(http://caniuse.com/#feat=css-filters),但未来可能会有所改进。

+0

是的,过滤器很好。但是,他们不允许在图像的一部分着色 - 比方说墙壁是黄色,天花板是白色的 - 。我想这仍然需要Canvas/SVG和JavaScripting。 – rhand 2017-01-10 10:10:49