Is it because of
refraction of light in water?
a mixture of UV rays in sunlight?
polarization of reflected light?
interference of light reflected from external and internal film surface?
or maybe dependence of the refractive index of soap and water on the wavelength of light?
Help me out because all of these sound promising, but I can't decide which is true.