Das Form-Tag stellt nach wie vor (und recht sinnloser Weise) Abstände dar, die oft vom Designer nicht gewollt sind. Früher, d.h. als man noch nicht in allen Browsern dieses Verhalten mit CSS abstellen konnte, war es ein üblicher Workaround Form-Tags in den damals typischen Tabellen-Layouts zw. Table- und erstem TR-Tag zu positionieren, Beispiel:
<table><form><tr></tr></form></table>
Das half die Darstellungsprobleme zu beseitigen. Muss man allerdings mit diesem Code heute arbeiten und etwa mittels JavaScript Elemente dynamisch hinzufügen, kann das beim Verschicken des Formulars zu interessanten Effekten führen. Beispielsweise dem, dass die Elemente zwar angezeigt, nicht aber für den POST-Request aufbereitet werden und so nie ankommen.
Merke: diesen alten Schrott umstellen, die entsprechende CSS-Behandlung für das Form-Tag unterstützen heute alle gängigen Browser!