彩虹是因为阳光射到空中接近圆型的小水滴,造成色散及反射而成。阳光射入水滴时会同时以不同角度入射,在水滴内亦以不同的角度反射。当中以40至42度的反射最为强烈,造成我们所见到的彩虹。造成这种反射时,阳光进入水滴,先折射一次,然后在水滴的背面反射,最后离开水滴时再折射一次。因为水对光有色散的作用,不同波长的光的折射率有所不同,蓝光的折射角度比红光大。由于光在水滴内被反射,所以观察者看见的光谱是倒过来,红光在最上方,其他颜色在下。
其实只要有空气中有水滴,而阳光正在观察者的背后以低角度照射,便可能产生可以观察到的彩虹现象。彩虹最常在下午,雨后刚转天晴时出现。这时空气内尘埃少而充满小水滴,天空的一边因为仍有雨云而较暗。而观察者头上或背后已没有云的遮挡而可见阳光,这样彩虹便会较容易被看到。另一个经常可见到彩虹的地方是瀑布附近。在晴朗的天气下背对阳光在空中洒水或喷洒水雾,亦可以人工制造彩虹。