陽光由七種顏色組成:紅、橙、黃、綠、藍、靛、紫。碰到水滴,會第壹次折射。由於這七種顏色的波長不同,它們的偏轉角也會不同。這時陽光會分解成七種單色光。折射後的單色光到達水滴背面後,會根據反射定律發生反射;反射的單色光會回到入射水滴的這壹側,然後第二次折射,水滴仍然會以單色光射出。
事實上,只要空氣中有水滴,並且太陽以低角度照射在觀測者身後,就可能出現可觀測的彩虹現象。彩虹壹般出現在雨後剛轉晴的下午,此時空氣中灰塵較少,充滿小水滴,天空的壹側因為仍有雨雲而漆黑壹片,但觀測者的頭頂或背後沒有雲也能看到太陽,所以彩虹會更容易看到。另壹個經常看到彩虹的地方是瀑布附近。天氣晴朗時,可以背對太陽向空中噴水或水霧,也可以制造人工彩虹。