首先,我们需要先介绍一下为何白云是白色的。我们所见到的云,无论白云乌云,本质上都是非常小的小水滴,而我们所认识到的乌和白的区别,无非就是不同的一大群小水滴的光学性质的差异罢了。云滴/小水滴的直径和光波波长接近,此时小水滴会对所有频段的可见光进行散射,这种特征的散射被称为米氏散射。太阳发出的光线本来就是白的,而云对太阳光的散射依然可以保持各种频段/颜色比例的相对均等,所以白云和太阳光的颜色是一样的。
那么为什么白云会在降水前变黑变成乌云呢?这就涉及光在云滴中的总透射率的问题。首先乌云通常比较厚,在降水前,云中液滴的密度会上升,云也会变得更浓厚稠密,更厚的云就可以吸收掉更多的光线,让更少的光线进入人的眼睛,这就降低了云朵的亮度。其次在降水前,液滴会变大(在变成降水下落前),更大的液滴会引起更大比例的光吸收,这就改变了云的光学性质。从而让云变暗。