Вони сяють зовсім не барвами веселки. Так, це "різнобарвна" плівка, але там принципово інші кольори, тому що інша фізика освіти кольору.
Кольори веселки - практично монохроматические (чисті). Червоний там - червоний, зелений - зелений і так далі. Без домішок "синеньке". Фізика освіти кольорів веселки - дисперсія. Залежність показника заломлення речовини (води, а цьому випадку) від довжини хвилі світла. Під певним кутом до нас в око потрапляють промені тільки певної довжини хвилі.
Кольори мильної бульбашки, як і кольори нафтової плівки на поверхні калюжі, - це інтерференційні кольору. Пузир - це тонка плівка, з точки зору поширення світла. Сонячне світло відбивається від ОБОХ кордонів такої плівки, а через те, що вона тонка (її товщина порівнянна з довжиною хвилі видимого світла), відбитий від обіх поверхонь світло виявляється когерентним, і ми спостерігаємо інтерференцію: взаємне накладення двох узгоджених (когерентних) коливань з деякою різницею ходу, що залежить від довжини хвилі, товщини плівки і кута, під яким ми на це на все дивимось. І що виходить: для деяких довжин хвиль ці коливання складаються в фазі, для деяких - в протифазі. Там, де коливання складаються строго в протифазі, колір взагалі "зникає" - ми його більше не бачимо.
Тому кольору плівки - це не чисті кольори, а додаткові. Вони виходять не виділенням якоїсь певної довжини хвилі з усіх, а повним або частковим придушенням певного кольору. Тому там не «червоний - зелений - синій" (RGB, в найпростішому варіанті), а "пурпурний - блакитний - жовтий".
Плівка мильної бульбашки нагадує за будовою мембрану живої клітини. Вона складається з двох мономолекулярних шарів поверхнево-активної речовини, гідрофобні "хвости" яких спрямовані назовні, а гідрофільні "голови" - назустріч один одному. Між цими шарами знаходиться деяке змінне кількість води. Залежно від кількості цієї води товщина плівки змінюється від десятків нанометрів до 1-2 мкм, а при деякому мінімальному її утриманні або при розтягуванні плівки стрибкоподібно зменшується до товщини двох мономолекулярних шарів.
Як вже сказав Сумний Роджер, кольору мильної плівки мають интерференционную природу. Яскраві кольори міхура відповідають толщинам плівки в чверть довжини хвилі - тобто 100-175 нм. При збільшенні товщини понад цього значення кольору стають бляклими і пастельними, а зменшення товщини призводить до того, що виходить жовтий колір, який при подальшому зменшенні товщини стає сірим. Плівка товщиною в два моношару ПАР майже не відображає кольори і тому називається "чорної" мильною плівкою. Зазвичай якщо плівку розтягують або дають воді випаруватися в спокійній обстановці, то перед тим, як вона лопне, на ній можна побачити темні "дірки". Це як раз ділянки такої "чорної" плівки.