Причина веселки - заломлення світла.
Веселка виникає через те, що сонячне світло випробовує переломлення в крапельках води, зважених в повітрі. Ці крапельки по-різному відхиляють світло різних кольорів, в результаті чого біле світло розкладається в спектр. Спостерігачеві здається, що з простору по концентричних кіл (дузі) виходить різнобарвне світіння (при цьому джерело яскравого світла завжди знаходиться за спиною спостерігача).
У яскраву місячну ніч можна побачити веселку від Місяця. Оскільки людський зір влаштовано так, що при слабкому освітленні найбільш чутливі рецептори ока - «палички» - не сприймає кольору, місячна веселка виглядає белесой- чим яскравіше світло, тим «кольорових» веселка (у її сприйняття включаються колірні рецептори - «колбочки»).
Центр кола, яку описує веселка, завжди лежить на прямій, що проходить через Сонце (Місяць) та очей спостерігача, тобто одночасно бачити сонце і веселку без використання дзеркал неможливо. Для спостерігача на землі вона зазвичай виглядає, як частина окружності, чим він вищий, тим веселка повніше - з гори чи літака можна побачити і цілу коло.
Джерело: Вікіпедія