A rainbow is a meteorological phenomenon that causes a spectrum of light to appear in the sky when the Sun shines on to droplets of moisture in the Earth’s atmosphere and always appear in the section of sky directly opposite the sun.
For there to be a rainbow you need water drops in the air and sunlight shining from behind at a low altitude angle — this is not always the case when there are clouds!
But when it is sunny, you can usually always see rainbows where there is falling water e.g. waterfalls and fountains.
Dalya is right. It is because the clouds are cloudy!
To be a bit more technical about it, the density of particles in a cloud is quite high, so even though there are “rainbows” being formed, only the ones at the very surface of the cloud has got a chance of getting out! Additionally, the big white cloud is reflecting lots of lights anyway, so the super weak rainbow is drowned out and we simply don’t see it.
It is still possible to get rainbows in clouds. These are called “fire rainbows” or “circumhorizontal arcs”. But they do require special conditions, such as very thin cirrus cloud.
To make a rainbow you need moisture in the sky, specifically rain clouds and several holes in those clouds to allow the sunlight to come through. Rainbows are seen because the sunlight shines through the raindrops and distributes throughout the moisture showing the rainbow color spectrum. You can also see rainbows in the mist of a waterfall, a wave spray at the ocean or even in water sculpture located outside.
You can make your own rainbow at home! Be sure the sun is shining on the location you want to create your rainbow. Turn on a sprinkler or the garden hose with a wide open spray and set up the spray to continue while you walk away.
You should now be able to see a lovely rainbow! Quick get your camera out!! 😀