The reason of why things float in water;(can be applied to air...) applies to air as well. Helium and the balloon displace an amount of air,and as long as Helium is less dense than air.Air contains oxygen and Nitrogen that are much heavier and have larger molecules than that of Helium.Then,the weight of the displaced air is more than the weight of helium and the balloon introduced.Hence,the balloon will float in the air(this is the law of buoyancy).
The Earth has its own magnetic field , it acts like there is huge bar magnet buried inside,but this bar magnet is not on the earth rotational axis it is shifted by some angle.The south of the bar magnet is on the magnetic north and the south polarity is on the magnetic north(image).As opposite polarities attract the magnetic needle (north) is attracted to the south polarity in the magnetic north.That’s why the needle always points north.If you want to know “why earth has magnetic field?”go to letter E.