This is quite a broad question. I will try to account all the important observations. 1. Metal ions which do not have d-orbital electrons do not have color. (alkali, alkali-earth, Sc3+) This is because of energy separation of s and p orbitals are not in the range of visible colors. 2. Metal with fully-filled d orbitals do not have color. (Zn2+) This is because electrons in d-orbitals cannot be excited to higher energy d-orbitals (all d-orbitals have the same energies, but when influenced by other atom in complex, d-orbitals can split into different energy levels) 3. For ions of the same metal, the ion with larger charge has a color of lower energy than the ion with smaller charge. Example: Cr2+ (blue) and Cr3+ (green). This is because larger charge contributes to larger split of the d-orbital. The more the orbitals split, the higher energy of light it traps, allowing low-energy photon to enter our eyes. Note that you cannot be sure that the color you see is a single color, not a combination of many colors. 4. For metals in the same column, a metal ion which is below has a color of lower energy than an ion above. This can be explained like no.3, larger ion causes more orbitals splitting. 5. Color of metal ions also depends on \"ligands\" (complexing molecule/ion). e.g. Co2+ in water is pink [Co(H2O)6]2+, while Co2+ in NH3 is blue [Co(NH3)4]2+. See \"spectrochemical series\" for more detail about this. 6. To find \"exact\" color of metal ions, you need a supercomputer to do so. (I\'m not sure whether today computer can calculate it). So, it\'s better to memorize the colors. Personally, I think you\'ll understand about metal\'s color when you study transition metals, like Crystal Field Theory, and Ligand Field Theory. Solution This is quite a broad question. I will try to account all the important observations. 1. Metal ions which do not have d-orbital electrons do not have color. (alkali, alkali-earth, Sc3+) This is because of energy separation of s and p orbitals are not in the range of visible colors. 2. Metal with fully-filled d orbitals do not have color. (Zn2+) This is because electrons in d-orbitals cannot be excited to higher energy d-orbitals (all d-orbitals have the same energies, but when influenced by other atom in complex, d-orbitals can split into different energy levels) 3. For ions of the same metal, the ion with larger charge has a color of lower energy than the ion with smaller charge. Example: Cr2+ (blue) and Cr3+ (green). This is because larger charge contributes to larger split of the d-orbital. The more the orbitals split, the higher energy of light it traps, allowing low-energy photon to enter our eyes. Note that you cannot be sure that the color you see is a single color, not a combination of many colors. 4. For metals in the same column, a metal ion which is below has a color of lower energy than an ion above. This can be explained like no.3, larger ion causes more orbitals splitting. 5. Color of metal ions also depends .