O gelo flutua na água, porque sua densidade é menor do que a da água líquida em temperatura ambiente.
A água ao congelar, expande seu volume em cerca de 10% (razão pela qual, em regiões muito frias, pode até arrebentar encanamentos, ocasionando grandes transtornos).
Isso ocorre devido ao formato angular das moléculas, que não permite que se agrupem muito próximas umas das outras. Assim, quando o líquido solidifica, essas moléculas ocupam um espaço maior, formando uma estrutura vazada, leve como ar . Esse aumento de volume faz com que o gelo tenha uma densidade menor que a água em estado líquido.
Essa é uma propriedade incomum, porque a maioria das substâncias puras é mais densa no estado sólido do que no líquido. Além da água, apenas a prata, o bismuto, o antimônio e o ferro-gusa ficam com um volume maior em seu estado sólido.
É por isso que o gelo acaba flutuando, em vez de afundar.
Errata:
Na verdade, o gálio e o germânio, por exemplo, também têm seu estado sólido menos denso que o líquido, não apenas água, Bismuto, Prata e ferro-gusa. As densidades do Ga são 5,9 (sólido) e 6,1 (líquido) e as do Ge são 5,3 (sólido) e 5,6 (líquido), tudo em g/cm³.
A página é muito educativa, parabenizo a disseminação do conhecimento.