Something interesting happens when I breathe on glasses and look directly at a source of white light: I see a circle-like spectrum of some colors (which kind of look like infrared visuals, sorry if I can't explain it well but you can try it to see yourself). Is that a chemical reaction? And what happens to light when it passes through the glasses at that state?
This is the same thing as the colors you see in an oil film on water. It is related to anti-reflection coatings on glasses.
Light is a wave. if you have two waves with just the same frequency and in phase, so the peaks of one line up with peaks of the other, then the waves reinforce. They add to a bigger wave.
If you have them out of phase, so the peaks of one line up with valleys of the other, they cancel. You get nothing.
When you breathe on glasses, you put a very thin layer of water on the glasses. Light partly bounces off the top of the water, and partly is transmitted through the water. Right underneath is glass. The light is partly reflected from the glass and partly transmitted through.
Light from the glass has traveled farther. Some places, the distances and angles are just right for a stronger wave. In others, they are just right for cancellation. So you get bands of bright and dark.
That is the first part of the answer. The second part is that red light has a longer wavelength than blue. So the places where red is bright are different from the places where blue is. This means you get colored bands.
The pictures are from the Wikipedia article Thin Film Interference, which also has an explanation of all this. Also, some of the pictures are clearer in the article.