Mah...strano che Firefox faccia così. L'unica cosa che mi viene in mente è che tu possa avere un box (div, p, h1, h2, ecc.) sopra il tuo h2 e che questo box abbia un margine inferiore impostato...nel qual caso questo margine e il margine superiore dell'h2 collassano. Come risultato, il margine effettivo presente tra i box sarà il maggiore dei due.