Puoi usare gli stili in linea (<div style="display:block">...</div>) per definire una visualizzazione diversa da quella di default, in base alle variabili lato-server, PHP o ASP.
Faccio un esempio con ASP:
Mettiamo che hai il campo "cognome" che di default è nascosto:
codice:
<div id="boxCognome">
<input type="text" name="Cognome" />
</div>
Se in edit mode lo vuoi visibile perchè, mettiamo il campo "Nome" è valorizzato (non nullo) puoi usare un if (lato-server) per renderlo visibile:
codice:
<div <%if(clt_Nome<>"")then%> style="display:block" <%end if%> id="boxCognome">
<input type="text" name="Cognome" value="<%=clt_Cognome%>" />
</div>
in alternativa potresti scrivere una funzione javascript che, al caricamento della pagina, faccia determiati controlli ed imposti i display adeguati alle varie parti del form.
Hope it helps