I also have a DIV'ed ad_form template -- much cleaner than tabled one (although I have not yet de-TABLEd all of th widgets, i.e. all the date stuff would still render as a bunch of cells). Once implemented, it is actually very easy to maintain, and a lot shorter/readable too...
The only problem I (thought I) have is the fact that one can't say: make this form DIV only as wide as form elements require, at least not in case when ad_form -section {} is used.
As for graceful degradation, the page does not get "cluttered", it simply gets unwound, with each DIV getting rendered sequentially. This is at least what happens in lynx. I'll try to resurrect NS4.7 and see what happens there.