Een regenboog ontstaat doordat de regendruppels net als een prisma het licht afbuigen. Dit verschijnsel heet breking. De grootte van de afbuiging hangt af van de soort stof en van de kleur licht. Verschillende kleuren licht buigen op het grensvlak tussen twee stoffen daardoor verschillend af. Het licht passeert twee grensvlakken; namelijk van lucht naar water en van water naar lucht. Wit licht kan op die manier gesplitst worden in de kleuren waaruit het bestaat.
De regenboog is voor mensen op de grond zichtbaar in de richting van de lichtbundel die uit de regendruppel komt, dus de mensen moeten links staan. Omdat de invallende lichtstraal van de zon ook van links komt moet je de zon dus in de rug hebben.
Het verschijnsel breking wordt veroorzaakt doordat licht in verschillende stoffen niet even snel gaat.