
|
HTML è un linguaggio di programmazione semplice e diffuso, grazie al quale milioni di utenti internet hanno la possibilità di pubblicare su WWW. Lo sviluppo della rete, e delle tecnologie ad essa collegate, non ha risparmiato l’HTML che nel corso della propria evoluzione si è trasformato da semplice strumento comunicativo non lineare, a linguaggio capace di gestire elementi multimediali ed intereattivi. Uno sviluppo, quello dell’HTML, per molti versi "perverso" ed influenzato da strategie commerciali sempre più aggressive. Mi riferisco, ovviamente, alla citatissima "guerra dei browser" tra Netscape e Microsoft. Un "conflitto" sul quale si gioca il futuro della rete, che da un lato ha permesso la definizione di specifiche sempre più avanzate, ma dall’altro ha generato incompatibilità e confusione. Da ciò è derivata la proposizione di standard HTML che definire anacronistici sarebbe esagerato, ma che sicuramente nascevano, di fatto, superati dalle continue release dei due browser più diffusi. Così, mentre nel gennaio del 1997 il W3C (World Wide Web Consortium) ufficiliazzava HTML 3.2, milioni di pagine web si servivano già dei frame, che tale versione non prendeva per nulla in considerazione. HTML 4 rappresenta, alla luce di quanto scritto finora, un decisivo cambio di strategia del W3C che non ha inteso soltanto prendere atto di una situazione preesistente, ma ha voluto proporre uno standard aderente alle nuove esigenze del web e dei progettisti di siti internet. Il nuovo HTML è stato ufficiliazzato il 18 dicembre 1997, ed è il risultato di uno studio molto approfondito e di una collaborazione tra le più importanti software house del panorama informatico mondiale (tra cui Netscape e Microsoft). Gli obiettivi del nuovo HTML possono sintetizzarsi in: accessibiltà, dinamismo, struttura e internazionalizzazione. In questa sede non si tratterà di quelle estensioni raccolte sotto il nome di HTML dinamico, ma è bene precisare come il nuovo standard rappresenti un decisivo passo in avanti nella direzione di un loro massiccio utilizzo. Accessibilità In seno al W3C è costituito il "Web Accessibilty Initiative" (WAI), che ha lo scopo di studiare soluzioni per l’accesso ai documenti da parte dei disabili. Il "W3C Proposed Recommendation" pone particolare attenzione a quest’aspetto e prevede:
Struttura Alle specifiche volte a favorire l’accesso ai disabili, si riferisce direttamente la definitiva assuzione a standard dei fogli di stile. Il 17 dicembre 1996 il W3C ha ufficialmente introdotto le raccomandazioni sui fogli di stile, introducendoli nella versione 3.2 dell’HTML con il tag STYLE, non fornendo, però, il codice indispensabile ad integrarli nei documenti ipertestuali. HTML 4.0 copre questa lacuna e introduce i fogli di stile a cascata (Cascading Style Sheets), i quali permettono di raggruppare più stili di propria scelta, applicandoli in modo flessibile secondo le esigenze dell’utente. Ciò consente, per esempio, ad un utente con difficoltà visive di adottare uno stile con caratteri più grandi. I fogli di stile a cascata, oltre a permettere l’utilizzo di più stili in una singola pagina HTML, seguono un ordine gerarchico d’interpretazione . Possono dividersi in tre modi:
Questi fogli di stile vengono aggiunti all’interno del documento in riferimento ai singoli tag: <p style="font: 14pt arial"> Paragrafo creato con un foglio di stile in linea </p>
Questo metodo consente il controllo sulle singole pagine (e non solo sui singoli tag) <HTML> <HEAD> <TITLE>Pagine creata con fogli di stile incorporati</TITLE> <HEAD> <STYLE> BODY {background: #0000FF; color: #FFFFFF; Margin-top:.55in; margin-left:.75in; margin-right:.75in } H3 {font: 14pt arial; color: #00000FF } P {font: 12pt times; text-indent: 0.5in} A {color: #FF00000} </STYLE> <BODY> <h3>Foglio di stile incorporato</h3> <p>esempio</p> </BODY> </HTML>
Questo metodo utilizza un foglio di stile principale che richiamato dai singoli documenti ne gestisce gli attributi. Per far questo è necessario creare un file esterno con estensione .CSS, che contenga: <STYLE> BODY {background: #FFFFFF; color: #0000000; Margin-top:.25in; margin-left:.75in; margin-right:.75in } H3 {font: 14pt arial; color: #00000FF } P {font: 12pt times; text-indent: 0.5in} A {color: #FF00000} </STYLE> Nei singoli documenti, poi, dovrà inserirsi (tra i tag <HEAD>) la seguente riga di codice: <link rel=stylesheet href="style.css" type="text/css"> I vantaggi di quest’ultima opzione sono evidenti: per modificare lo stile di tutte le pagine gestite dal file .CSS non è necessario modificarle singolarmente, ma è sufficiente intervenire soltanto sul file principale del foglio di stile. I fogli di stile sono gestiti dai browser più recenti e sono destinati a soppiantare l’abitudine di creare il layout di pagina attraverso tabelle, che con HTML 4.0 torneranno al loro originario ruolo di strumenti per la presentazione dati. Il modello definitivo di tabelle dell'HTML 4.0 riprende la prima stesura dell'HTML+ (basate su RFC1942). E' stato introdotto, tra le altre cose, il nuovo elemento COLGROUP che permette di creare gruppi di colonne, specificandone allianeamento e larghezza, mentre il tag CAPTION fornisce una breve descrizione del contenuto della tabella. Nello specifico, riprendendo quanto ufficialmente riportato nel W3C Proposed Recommendation, le più importanti innovazioni alle tabelle sono:
sarà possibile allineare una colonna di numeri sul punto decimale);
adeguato per le tabelle interrotte durante le pagine di stampa;
colonne con larghezza e proprietà di allineamento differenti da uno o più elementi, e rules="basic" è stato sostituito da rules="groups".
I frame, implementati per la prima volta in Netscape 3 nell’estate del 1996, sono rettificati da HTML 4 che ne ha standardizzato l’uso, e aggiunto un nuovo elemento denominato IFRAME. Quest’ultimo elemento genera frame flottanti, sostituendosi al tag FRAMESET. Il risultato è la creazione di frame interni alla struttura: <HTML> <HEAD> <TITLE>Frame in linea</TITLE> </HEAD> <STYLE> BODY {background: #0000FF; color: #FFFFFF;} A {color: #FF00000} </STYLE> <BODY> <B><FONT SIZE=5 FACE="VERDANA">Frame <I>in</I> linea</FONT></B> <BR><BR><BR> <div align=center> <IFRAME src="http://inews.tecnet.it/" name="iframe1" frameborder=0 scrolling=yes width=95% height=300 align=middle></IFRAME> </div> <BR><BR> <ul><ul><ul> <I><B><FONT SIZE=4 FACE="VERDANA">Questa pagina puo' essere visualizzata<BR>solo con MSIE 3 o superiore e non con Netscape.</FONT></B></I> </ul></ul></ul> </BODY> </HTML> Nell’esempio, all’interno di una pagina è creato un frame in linea, nel quale a sua volta viene richiamato un altro sito internet. Il tag SCRIPT era previsto da HTML 3.2 senza che fosse resa disponibile un’interfaccia di script tale da poter essere inserita dal lato client. Mentre Netscape si rifaceva a JavaScript, Microsoft lanciava un nuovo linguaggio di script denominato VBScript. Allo stato attuale tutto lascia presagire che sarà JavaScript ad imporsi come standard. Con il supporto di script, HTML 4.0 intende costruire una struttura capace di includere un linguaggio ad oggetti restando nello stesso tempo neutrale all’implementazione. Se da un lato ciò determina il vantaggio della flessibilità, dall’altro non assicura che tutti i browser supportino tali tecnologie. L’uso di script è indispensabile per tutte quelle estensioni che vanno sotto il nome di HTML dinamico, e che non è azzardato considerare come il futuro della programmazione ipertestuale. HTML 4.0 migliora la gestione dei moduli rendendoli interattivi, grazie ad eventi intrinseci, e aggiungendo supporti per i browser a sintesi vocale. Sono introdotti tre nuovi elmenti: LABEL fornisce ai browser a sintesi vocale la possibilità di descrivere un elemento e rende interattivi i form. Le etichette utilizzate possono essere implicite o esplicite. BOTTON consente di creare altri bottoni oltre ai due standard (invio e reset) finora disponibili. FIEDLSET raggruppa campi relativi in modo da fornire ai browser a sintesi vocale la possibilità di descrivere diversi gruppi e permettere all’utente di spostarsi da un gruppo ad un altro. In associazione all'elemento LEGEND, può essere usato per nominare il gruppo. Entrambi questi nuovi elementi, permettono una migliore interpretazione ed interazione. Una nuova serie di attributi onchange-INPUT, in associazione con il supporto per i linguaggi script, permette ai form dei providers di verificare i dati inseriti dall'utente. L'elemento INPUT ha un nuovo attributo ACCEPT, che permette agli autori di specificare una lista di media o tipi di struttura per l'input. L'attributo ACCESSKEY provvede a specificare un accesso diretto tramite tastiera ai campi del formulario. HTML 4.0 introduce l’elemento OBJECT che sostituisce IMG e APPLET per l’inserimento di oggetti all’interno di un documento ipertestuale. Questo marcatore omnicomprensivo permette di includere immagini, video, suoni e programmi esecutivi nel documento, attraverso una tecnica gerarchica, per specificare varie alternative in base all'ambiente in cui si trova ad operare il browser dell'utente. All’elemento OBJECT è associato l’elmento PARAM che determina una serie di parametri necessari ad inizializzare un oggetto. HTML 4.0 permette di stampare pagine web senza per questo ottenere una pura e semplice riproduzione della pagina. Il programmatore HTML 4.0 ha la possibilità di definire ciò che sarà stampato, e come sarà stampato, quando l'utente farà click sul pulsante "Stampa" del proprio browser.
Internazionalizzazione Tra gli obiettivi fondalmentali di HTML 4.0 è la definizione di uno standard che tenga in conto l’internazionalizzazione del web, ovvero il suo sviluppo anche in paesi di lingua non anglosassone. A tal riguardo il W3C ha adottato un nuovo set di caratteri definito nel RFC 2070, facendo distinzione tra il set di caratteri del documento e la codifica di caratteri interna. E’ introdotto il set di caratteri ISO/IEC:10646 pubblicato nel 1993 e codificato a 32 bit. L’adozione di questo standard permette ai browser di gestire in modo adeguato idiomi e caratteri che ora generano soltanto testo incomprensibile. HTML 4.0 aggiunge al tag FORM l’attributo ACCEPT-CHARSET che specifica le codifiche che il server è capace di ricevere dall’utente, attraverso il meccanismo dei moduli HTML. In questo modo si cerca di rendere compatibili anche i set di caratteri trasferiti dagli utenti all’interno del web. HTML 4.0 introduce il tag LANG che specifica la lingua del contenuto di un documento: <P LANG="fr">Vive la France</P> L’attributo LANG assume un valore di due lettere che corrisponde ad un lingua. Sono utilizzabili identificatori che specificano dialetti all’interno di una stessa lingua. Lingue come l’arabo e l’ebraico, al contrario delle lingue occidentali, sono scritte da destra a sinistra. Per gestire queste lingue la specifica RFC 2070 introduce marcatori di direzione "left-to-right" e "right-to-left".
A ben guardare le nuove specifiche di HTML 4.0, è evidente il decisivo sguardo al futuro che il W3C ha voluto imprimere a questa versione. Il nuovo standard, a differenza dei precedenti, è un ambizioso tentativo di integrazione fra un’ampia varietà di mezzi, stili e script, allo scopo di raggiungere il più ampio pubblico possibile. Un tentativo che a giudicare dalle premesse, sembra destinato a migliorare il WWW, fornendo finalmente un serio standard di riferimento ai progettisti di siti internet. Esempio B Esempio C Esempio D Esempio E
Links su HTML Il testo definitivo del W3C Proposed Recommendation http://www.w3.org/TR/REC-html40/ Cambiamenti tra HTML 3.2 e HTML 4.0 http://www.w3.org/TR/WD-html40-970708/appendix/changes.html "Web Accessibilty Initiative" (WAI) http://www.w3.org/WAI/References/HTML4-access ISO/IEC:10646 HTML Goodies HTML point |