Come web designer, tutti noi vogliamo lavorare con le ultime e migliori tecnologie. A volte, tuttavia, siamo bloccati a lavorare su pagine legacy che, per un motivo o per l'altro, non possono essere aggiornate agli standard web attuali. Lo vedi su alcune applicazioni software che potrebbero essere state create su misura per le aziende molti anni fa. Se hai il compito di lavorare su quei siti, ti sporcherai senza dubbio le mani lavorando con un vecchio codice. Potresti persino vederne uno o due lì dentro!
L'elemento HTML era un elemento fisso di progettazione del sito web alcuni anni fa, ma è una caratteristica che vedi raramente sui siti in questi giorni, e per una buona ragione. Diamo un'occhiata a dove si trova oggi il supporto e cosa devi sapere se sei costretto a lavorare con i frame su un sito Web legacy.
Supporto HTML5 per i frame
IlHTML5. Ciò significa che se stai codificando una pagina Web utilizzando l'ultima iterazione della lingua, non puoi utilizzare i frame HTML nel tuo documento. Se vuoi usare unHTML 4.01 o XHTML per il tuo doctype della pagina.
Poiché i frame non sono supportati in HTML5, non utilizzerai questo elemento su un sito appena creato. Questo è qualcosa che incontrerai solo su quei siti legacy di cui sopra.
Da non confondere con iFrame
L'HTML
Targeting dei frame HTML
OK, quindi tutto ciò che riguarda i frame che sono obsoleti è stato detto, cosa succede se hai bisogno di lavorare con questi vecchi pezzi di HTML?
Se stai usando un vecchio doctype e vuoi usare i frame HTML, ci sono alcuni problemi comuni di cui dovresti essere a conoscenza. Uno di questi problemi è ottenere i collegamenti da aprire nel corretta telaio. Questo è chiamato targeting. Dai ai tuoi tag di ancoraggio un "bersaglio" per aprire i loro collegamenti. Il target è solitamente il nome del frame.
Nel set di frame sopra, ci sono due frame, il primo è chiamato "nav" e il secondo è chiamato "main". Possiamo immaginare che il frame di navigazione (frame1.html) sia la navigazione e tutti i collegamenti al suo interno dovrebbero aprirsi all'interno del frame principale (frame2.html).
Per fare ciò, daresti ai link nel frame1 l'obiettivo di "main". target="principale">. Ma cosa succede se non vuoi aggiungere il target a ogni link sulla tua pagina di navigazione? Puoi impostare un target predefinito nell'HEAD del tuo documento. Questo è chiamato l'obiettivo di base. Aggiungeresti la linea
Frame e Noframe
Una delle sezioni più utilizzate in modo improprio del tag frame è noframes. Questo tag consente alle persone con browser incompatibili di frame di visualizzare la tua pagina (non funziona per HTML5, solo per browser molto vecchi senza supporto per frame, quindi non puoi provare a stiparlo in HTML5 per farlo lavoro. Bel tentativo, ma senza fortuna.), e questo è l'obiettivo finale, non è vero?
In un tipico set di frame, l'HTML ha questo aspetto:
Questo creerà una pagina con due frame, la parte superiore è alta 40 pixel e la parte inferiore è il resto della pagina. Questo sarebbe un bel frameset della barra di navigazione superiore con il marchio e la navigazione nel frame da 40 pixel.
Tuttavia, se uno dei tuoi spettatori arriva al tuo sito su un browser incompatibile con i frame, ottiene una pagina vuota. Le possibilità che tornino al tuo sito sono piuttosto scarse e per renderlo visualizzabile da loro devi aggiungere altre quattro righe di HTML:
Questo sito è incorniciato, ma puoi visualizza una versione senza cornice.
Poiché stai puntando alla porzione di contenuto del tuo frameset (frame2.html) nella porzione noframes della pagina, il tuo sito diventa accessibile.
Tieni presente che mentre potresti utilizzare l'ultima versione di il tuo browser preferito, il tuo pubblico potrebbe non voler scaricare continuamente il software più recente. La loro macchina potrebbe non supportarlo o potrebbero non avere spazio per installare un programma da 20+ Mega sul proprio disco rigido. L'aggiunta di quattro righe di HTML è una soluzione semplice.