Why do atoms of metals form cations?
Metals are bigger than non metals, so the valence electrons for metals are farther away from the nucleus. For main group metals like the alkali metals and the alkaline earth elements, there are only one or two valence electrons. These electrons are shielded by the core electrons, which basically decrease the nuclear charge that the valence electrons feel. If we look at Na for example, its electron configuration is 1s^2 2s^2 2p^6 3s^1. The lone electron on the 3s orbitals does not feel a +11 charge from the nucleus of sodium, it feels a smaller charge, since the inner core electrons (10 electrons), shield the full charge from that electron, the shielding is not perfect, but still, that electron feels a charge of around 2.3, instead of the full +11, so it can be removed easily. As we proceed to the nonmetals, the electrons are entering into the same subshell, so, for Cl, for example, 1s^2 2s^2 2p^6 3s^2 3p^5, the most exposed electrons, the 3p^5 subshell feels a much higher nuclear charg