It starts with sun on ice crystals. This is why cirrus clouds are generally the only clouds to display fire rainbows. The clouds have to be far enough up in the air for ice crystals to form, and the sun has to be shining through them in order for the light to reach people on the ground. Dark storm clouds blot out the sun and low fog doesn’t contain enough ice crystals to properly refract the light. When they form, ice crystals often make little hexagonal plates. If the sun is at least fifty-eight degrees above the horizon (the optimum angle is 67 degrees), its light hits the top of these plates and is split into different colors. Since the plates only exist in the cloud, and nothing else around it, the entire cloud turns into a self-contained rainbow.