Grazie del suggerimento, ma poi ho scoperto che il problema era che nell'if usavo
codice:
document.getElementById(i+"a").style.border="";
mentre nell'else
codice:
document.getElementById(i+"a").style.borderColor="";
Tuttavia rimane il problema della spaziatura fra i campi di input, che nonostante li imposto tramite css, c'è una leggera differenza fra un browser e l'altro


[EDIT:] Inoltre nell'if (dove reimostavo il form allo stato originale) ho impostato il colore di sfondo invece che usare "".