Il cuore del WWW: i Links I link e l'ipertestualità Una delle caratteristiche che ha fatto la fortuna del web è l’essere costituito non da testi ma da ipertesti (un’altra delle caratteristiche che hanno fatto grande il web è senz’altro la possibilità di interagire, ma questo è un altro discorso). I link sono "il ponte" che consente di passare da un testo all’altro. In quanto tali, i link sono formati da due componenti:
Di solito per spiegare che cosa sono i link si utilizza la metafora dell’ancora con "la testa" all’interno del documento stesso, e la "coda" in un altro documento (o all’interno di un altro punto del documento stesso). Link che puntano ad altri documentiEcco la sintassi per creare un link con riferimento a un sito web: Le risorse per webmaster sono su <a href="http://www.isolajava.com/">isolajava.com</a>. Che dà come risultato: 'Le risorse per webmaster sono su www.isolajava.com'. Come si può intuire la testa della nostra àncora è il testo "isolajava.com", mentre la coda, cioè la destinazione (specificata dall’attributo href) è il sito web verso cui il link punta, cioè http://www.isolajava.com/index2.php È indifferente che la destinazione dell’ancora sia una pagina HTML di un sito, un’immagine, un file pdf , un file zip, o un file exe: il meccanismo del link funziona allo stesso modo indipendentemente dal tipo di risorsa; poi il browser si comporterà in modo differente a seconda della risorsa. Ad esempio:
Potete anche specificare un indirizzo e-mail. In questo caso si aprirà direttamente il client di posta dell’utente con l’indirizzo e-mail pre-impostato. La sintassi è la seguente: <a href="mailto:tuaMail@nomeTuoSito.it"> Che dà come risultato: Mandami una e-mail. I percorsi assoluti e relativi Percorsi assolutiFino a quando ci troviamo nella condizione di creare un sito web di dimensioni ridotte (poche pagine) non avremo problemi di complessità, e possiamo anche ipotizzare di lasciare tutti i nostri file in una medesima cartella. È evidente però che – man mano che il nostro sito web cresce – avremo bisogno di un maggior ordine. Si presenterà allora l’esigenza di inserire le immagini del sito in una cartelle diverse (in modo da averle tutte nella medesima locazione), e magari sarà opportuno dividere il sito in varie sezioni, in modo da avere tutti i documenti dello stesso tipo all’interno di un contesto omogeneo. I siti web sono dunque organizzati in strutture ordinate: non a caso si parla di albero di un sito, per indicare la visualizzazione della struttura alla base del sito. Poiché l’organizzazione di un sito in directory e sottodirectory è una cosa normalissima, dobbiamo imparare a muoverci tra i vari file che costituiscono il sito stesso, in modo da essere in grado di creare collegamenti verso i documenti più reconditi, destreggiandoci tra le strutture più ramificate. Per farlo esistono due tecniche:
Nel caso in cui il documento a cui vogliamo puntare si trovi in una particolare directory del sito di destinazione, con i percorsi assoluti non abbiamo che da indicare il percorso per esteso. Se esaminiamo: Leggi le risorse sui <a href="http://www.isolajava.com/css/index.html">fogli di stile</a> Possiamo vedere chiaramente che il link indica un percorso assoluto e fa riferimento ad una particolare directory. Nella fattispecie:
Insomma, per creare un collegamento assoluto è sufficiente fare riferimento all’url che normalmente vedete scritto nella barra degli indirizzi. I percorsi assoluti si usano per lo più, quando si ha la necessità di fare riferimento a risorse situate nei siti di terze persone. Percorsi relativiSpesso vi troverete tuttavia a fare riferimento a documenti situati nel vostro stesso sito, e – se state sviluppando il sito sul vostro computer di casa (cioè "in locale") – magari non avete ancora un indirizzo web, e non sapete di conseguenza come impostare i percorsi. È utile allora capire come funzionano i percorsi relativi. I percorsi relativi fanno riferimento alla posizione degli altri file
rispetto al documento in cui ci si trova in quel momento. <a href="paginaDaLinkare.html">collegamento alla pagina da linkare nella stessa directory della pagina presente</a> Poniamo ora di trovarci in una situazione di questo genere:
Figura 1. Riferimento a pagina di una
sottodirectory
Dalla pagina "index.html" vogliamo cioè far riferimento al file "interna.html", che si trova all’interno della directory "interna", che a sua volta si trova all’interno della directory "prima". La sintassi è la seguente: <a href="prima/interna/interna.html">Visita la pagina interna</a> Vediamo adesso l’esempio opposto: dalla pagina interna vogliamo far riferimento a una pagina ("index.html") che si trova più in alto di due livelli:
Figura 2. Riferimento a pagina in una
directory di livello superiore
La sintassi è la seguente: <a href="../../index.html">Visita la pagina interna</a> Come si vede, con i percorsi relativi valgono le seguenti regole generali:
Grazie a questi accorgimenti potete agevolmente navigare all’interno delle directory del vostro sito: se ce ne fosse bisogno potrete per esempio tornare su di un livello rispetto alla posizione del file, scegliere un’altra cartella, e poi scegliere un altro file: ../altraCartella/nuovoFile.html Per approfondimenti potete consultare la pagina d’esempio. ApprofondimentiA volte potrete incontrare la notazione: Leggi le risorse sui <a href="/css/index.html">fogli di stile</a> Se il vostro sito è all’interno di un server Unix (ma la sintassi funziona anche in sistemi Windows, basta che non siano in locale), questa notazione non deve stupirvi: il carattere '/' indica la directory principale del sito, altrimenti detta "root". Dunque <a href="/css/index.html"> è un altro modo di esprimere i percorsi assoluti all’interno del proprio sito. Un'altra cosa importante da sapere è che quando metterete il vostro sito all'interno dello spazio web, l'indicazione della index all'interno di una directory è facoltativa. Al posto di questo: http://www.isolajava.com/css/index.html è sufficiente indicare la directory: http://www.isolajava.com/css/ Verificate solo con il vostro gestore dello spazio web (cioè "hosting"), se le pagine index della directory devono avere forma index.html, index.htm, index.asp, index.php, home.asp, o altro. Consigli per i nomi dei fileQuando mettere nel web il vostro sito internet, vi accorgerete che esistono due famiglie di sistemi operativi: Windows e Unix. Questi due sistemi operativi utilizzano differenti modi per gestire i file, dunque alcuni accorgimenti sono necessari:
Inoltre quando create un collegamento state attenti a non avere una notazione simile a questa: <a href="file:///C|percorsonomeFile.html">testo</A> significa che state facendo un riferimento (assoluto) al vostro stesso computer: chiaro che quando metterete i file nel vostro spazio web, le cose non funzioneranno più. I link interni o ancore È possibile anche creare un indice interno al documento, utilizzando le ancore. Ciascuna ancora può avere infatti un nome: <a name="primo">Stiamo per esaminare la struttura…. Eccetera…</a> Da notare che in mancanza dell’attributo che indica il collegamento (href) le àncore non vengono viste come link, ma la loro formattazione è indistinguibile dal "normale" testo. In un ipotetico indice è allora possibile far riferimento all’àncora presente all’interno del documento attraverso un link che punti ad essa: <a href="#primo">vai al primo paragrafo</a> il cancelletto indica che il collegamento deve cercare un àncora chiamata "primo" all’interno della pagina stessa. Se non si specifica il nome dell’àncora a cui si vuol puntare, viene comunque creato un link che punta ad inizio pagina (viene cercata un’àncora il cui nome non è specificato). Questo infatti è un ottimo escamotage per creare link "vuoti" (in alcuni casi vi occorreranno). Ad esempio: <a href="#">link vuoto</a> Per creare un indice interno alla pagina si procede dunque in due fasi distinte:
È bene non confondere le due fasi. Un esempio di quanto appena esposto lo potete trovare nella pagina dell’esempio. Gli attributi dei link targetÈ anche possibile specificare in quale finestra la pagina linkata deve essere aperta: di default infatti la pagina viene aperta all'interno del documento stesso, ma è possibile specificare che la pagina sia aperta in una nuova finestra: <a target="_blank" href="http://www.isolajava.com">visita isolajava.com</a> cioè: vedremo questo attributo più in dettaglio quando parleremo dei frames. titleL'attributo title è molto importante, e serve per
specificare un testo esplicativo per l'elemento a cui l'attributo è riferito (il
title si può infatti utilizzare anche per elementi differenti dalle ancore).
Questa spiegazione addizionale favorisce
l'accessibilità del sito anche ai disabili, alle persone per esempio che
hanno disturbi alla vista. Se lasciate il cursore del mouse per qualche secondo
su un collegamento dotato di title, vedrete comparire una specie di etichetta
con il testo specificato nel <a title="in isolajava.com puoi trovare risorse per webmaster" href="http://www.isolajava.com/" target="_blank" > Visita isolajava.com </a> cioè: L'attributo hreflangCon "hreflang" si indica la lingua del documento: si tratta di un attributo che migliora l'accessibilità del sito, oltre ad essere potenzialmente utile per i motori di ricerca (l'attributo può essere utilizzato ad esempio per specificare la presenza di una sezione del proprio sito in lingua inglese):
Nel sito del <a href="http://www.w3c.org/" hreflang="eng" target="_blank">World Wide Web Consortium</a> puoi trovare le specifiche dell'HTML in lingua inglese
cioè:
Nel sito del World Wide Web Consortium puoi trovare le specifiche dell'HTML in lingua inglese
accesskeyLe accesskey sono delle scorciatoie "da tastiera" che potete utilizzare nel vostro sito. Si tratta di scegliere delle lettere della tastiera che - quando vengano digitate dall'utente - permettono di andare direttamente a determinate pagine. Per esempio potreste specificare che:
<a href="http://www.isolajava.com/" accesskey="h" target="_blank" >Torna all'home page di isolajava.com</a>
cioè: In questa pagina digitando "ALT + h + invio" con Internet Explorer, oppure direttamente "h + invio" con Mozilla si accede direttamente all'home page di isolajava.com. Si tratta di un'altra tecnica per migliorare l'accessibilità, ma un uso improprio e indiscriminato di questa tecnica può risultare davvero deleterio per la navigazione. Diciamo che le accesskey dovrebbero essere riservate per la navigazione dei menu che portano alle parti principali del sito. Colorare i linkAbbiamo già visto come colorare i link in tutta la pagina. Possiamo però aver bisogno di colorare alcuni link della pagina in modo diverso. Per farlo è sufficiente annidare il tag <font> all'interno del link:
<a href="http://www.isolajava.com/" target="_blank" ><font color="red" size="2" face="Verdana, Arial, Helvetica, sans-serif">Torna all'home page di isolajava.com</font></a>
cioè: ovviamente il modo giusto per colorare i link non è quello di utilizzare il tag font, ma quello di utilizzare i fogli di stile, come spiegato nella Guida CSS. Il tag <base>I percorsi relativi fanno di norma riferimento alla directory in cui si trova
il file HTML che stiamo scrivendo. Se tuttavia vogliamo far riferimento a un
differente percorso per tutti i percorsi relativi, possiamo farlo specificandolo
grazie al tag che va incluso nella head del documento. Ad esempio con:
<base href="http://www.mioSitoWeb.com/miaCartella">
specifico che d'ora in poi tutti i percorsi relativi faranno riferimento al percorso indicato. E poi nel documento potrò scrivere: <a href="mioFile.html">collegamento al mio file</a> sicuro che farà riferimento a:
http://www.mioSitoWeb.com/miaCartella/mioFile.html
Si tratta di una caratteristica particolarmente utile quando bisogna mandare
ad esempio delle mailing list in formato HTML: possiamo infatti utilizzare i
percorsi relativi per sviluppare la pagina della mailing list in locale, e
mantenerli inalterati grazie all'utilizzo di questo tag. Grazie ad esso siamo
infatti sicuri che anche l'utente che riceverà la mail potrà visualizzare le
immagini e i link con un percorso corretto. |