Why is Sodium Chloride White?
Sodium chloride is colorless because the electrons are tightly bond tho the sodium cation and the chloride anion. Visible light has not enough energy to excite the electrons to higher energy levels. So there's no absorption or emission of visible light of a certain wavelength and therefore no color.
I wouldn't say that the majority of salts is colorless, since the more complex the composition of a salt is the more likely it is not colorless.