Thanks for your help so far, dagon.
I ran a test and this might help explain what is happening...
I typed this into a blank form and saved it to the database...
Some text.
<table>
<tr><td>Content of table.</td></tr>
</table>
When displaying this in the browser and looking at the page's code I see this...
Some text.<br><br><br><br><table>...........
Notice the 4 <br> tags even though I only hit the enter key twice.
Now if I add a few more table rows like this...
Some text.
<table>
<tr><td>Content of table.</td></tr>
<tr><td>Content of table.</td></tr>
<tr><td>Content of table.</td></tr>
<tr><td>Content of table.</td></tr>
<tr><td>Content of table.</td></tr>
<tr><td>Content of table.</td></tr>
</table>
The page's source code now becomes this...
Some text.<br><br><br><br><br><br><br><br><br><table>...........
Notice there are now 9 <br> tags instead of 4. For some reason more <br> tags are created when the number of form elements increase. This would mean a complex table can have a HUGE gap between it and the paragraph of text before it.
I think maybe form tags are being seen at line breaks somehow....??