frame sono stati deprecati perché hanno causato problemi per la navigazione URL e collegamenti ipertestuali, poiché l'URL sarebbe solo prendere a voi la pagina di indice (con il set di frame) e non c'era modo di specificare cosa c'era in ciascuna delle finestre del frame. Oggi, le pagine web sono spesso generati dalle tecnologie server-side come PHP, ASP.NET, Ruby ecc Così, invece di usare i frame, le pagine possono semplicemente essere generati dalla fusione di un modello con contenuti di questo tipo:
file modello
<html>
<head>
<title>{insert script variable for title}</title>
</head>
<body>
<div class="menu">
{menu items inserted here by server-side scripting}
</div>
<div class="main-content">
{main content inserted here by server-side scripting}
</div>
</body>
</html>
Se non si ha il pieno supporto per un linguaggio di scripting server-side, si potrebbe anche utilizzare il server-side include (SSI). Questo ti permetterà di fare la stessa cosa - cioè. generare una singola pagina web da più documenti di origine.
Ma se si vuole davvero che una sezione della pagina Web sia una "finestra" separata in cui è possibile caricare altre pagine Web che non si trovano necessariamente sul proprio server, sarà necessario utilizzare uno iframe.
Si potrebbe emulare il vostro esempio come questo:
Frames Esempio
<html>
<head>
<title>Frames Test</title>
<style>
.menu {
float:left;
width:20%;
height:80%;
}
.mainContent {
float:left;
width:75%;
height:80%;
}
</style>
</head>
<body>
<iframe class="menu" src="menu.html"></iframe>
<iframe class="mainContent" src="events.html"></iframe>
</body>
</html>
Ci sono modi probabilmente meglio per ottenere il layout. Ho usato l'attributo CSS float, ma potresti anche usare tabelle o altri metodi.
Per questo non c'è una facile sostituzione. –
Cosa, in particolare sui frame, stai cercando di riprodurre? Vuoi solo due colonne? –
Voglio avere la stessa funzionalità di quando uso