E' una cosa che credo tu possa gestire tramite javascript (se ho ragione e la discussione dovesse continuare, fatti spostare).
Prova in questo modo: invece di richiamare il frameset e tentare di fargli caricare una pagina all'interno di un frame, prova a richiamare direttamente la pagina che ti interessa caricare e fai in modo che lei stessa richiami il frameset, disponendosi dove opportuno. (non so se sono stato chiaro)
Ti posto il codice che uso per fare ciò
Nella pagina che contiene il frameset metti un javascript per fargli disegnare il frameset (qui è un iframe, basta cambiare i tag però)
codice:
<script type="text/javascript" language="javascript">
var pagdef = 'pagina1.htm'; /* qui metti la pagina che deve aprirsi normalmente nell' iframe */
var pagstrin = location.search.substr(1);
var NS4 = (document.layers) ? true : false ;
if((location.search.substr(1)) == ''){pagina = pagdef;}
else{pagina = pagstrin;}
if(NS4){
document.write('<ilayer id="d1" width="'400' height="'400'">');
document.write('<layer id="d2" src="'+pagina+'" width="'400'"');
document.write('height="'400'"><\/layer><\/ilayer>');}
else{
document.write('<iframe src="'+pagina+'" name="main"');
document.write('width="'400'" height="'400'"><\/iframe>');}
</SCRIPT>
Praticamente questo dice: se mi richiami così come sono, ti carico dentro la pagina di default. E fin qui non cambia niente. (se non che il frameset viene scritto via js)
Nella pagina che andrai a richiamare, invece, metti questo:
codice:
<script language="JavaScript" type="text/javascript">
if (window.top == window.self) {
location.href='index.htm?'+document.URL }
</script>
che dice: Se mi hanno richiamato direttamente e non sono dentro nessun frameset, vatti a cercare la index che contiene il frameset e sbattimi dove opportuno.
Devi cambiare un po' il codice, ma lo script di base è quello. Spero di esserti stato utile
Ciao
PS Questo script contiene anche i controlli per stabilire se sei su netscape4, perchè ha problemi con gli iframe (infatti c'è un tag ILAYER). Il frameset normale mi sembra però che sia supportato, quindi taglia pure il controllo