Muovere i primi passi in XHTML con Style.

Benvenuti su questa guida. Se siete arrivati fin qui e non per caso, significa che siete interessati a fare pagine web usando XHTML (Extensible HyperText Markup Language) ovvero le più recenti tecniche di programmazione web che fanno uso di regole decisamente più rigide perché meno tolleranti del buon "vecchio" HTML (HyperText Markup Language).

Per quale motivo soltanto adesso su Web-Link si parla di XHTML? Semplicemente perché soltanto adesso si hanno riscontri concreti che questo sia lo standard di regole da seguire: di sigle e di proposte alternative ad HTML, fermatosi alla sua versione 4.01 rilasciata nel lontano 1997, se ne sono viste e sentite molte, ma nessuna ha avuto il successo che prometteva, hanno però tutte quante contribuito notevolmente all'attuale XHTML che altro non sarebbe che una riformulazione di HTML 4.x come applicazione XML.

Lo scopo di questa rubrica è, come sempre, dare la spinta giusta fornendo lo stimolo per iniziare; nessuna presunzione visto l'argomento decisamente più complesso di quello che sembra e che in quanto tale difficilmente riuscirebbe ad essere trattato in maniera esauriente in così poche pagine.

I tempi attuali impongono una certa evoluzione anche da parte degli addetti ai lavori, dalla nascita di HTML ad oggi di cose ne sono cambiate, basti pensare agli stessi dispositivi per accedere alle pagine web (client) che si sono notevolmente evoluti e ai quali se ne sono aggiunti di nuovi; non è più tanto raro accedere a pagine web con palmari o telefoni cellulari ed anche webTV.

A chi si rivolge questa guida? Ovviamente a tutti: chi inizia da zero e chi ha già un sito fatto in HTML e vuole adeguarlo ottimizzandolo nel rispetto delle regole XHTML per renderlo corrispondente a questa definizione. Il passaggio non è complesso, si tratta di introdurre la regola della struttura a moduli ed essere consapevoli che non si potrà più tralasciare nemmeno quei piccoli particolari pensando che tanto il browser sarebbe poi comunque in grado di visualizzare il codice adoperato, al contrario: la rigidità di XML impedirà di fare come è accaduto fino ad oggi, contribuendo con disattenzioni ed inesattezze al degrado di un codice pulito e semanticamente corretto. Non è infatti una rarità trovare pagine con guazzabugli di codice dovuti a tags ripetuti o inseriti in posti sbagliati, spesso sintatticamente scorretti, e constatare con una certa sorpresa che il browser adoperato è comunque in grado di visualizzare quella pagina in modo decente.

XHTML pretende che tutti i tags ed i loro attributi siano espressi in minuscolo; è obbligatorio inserire sempre il tag di chiusura (quando esiste), ad esempio per il paragrafo <p> dove la sua chiusura </p> era facoltativa diventerà adesso obbligatoria, mentre per quei tags che non hanno un relativo tag di chiusura, come ad esempio il ritorno a capo <br>, si dovrà fare uso della barra di chiusura / all'interno dello stesso così da farlo diventare <br />.

I valori dei vari attributi dovranno essere specificati tra doppi apici o virgolette " " ; si dovrà utilizzare l’attributo id insieme o al posto di name per identificare gli elementi di un documento.

A questo punto il principiante che non conosce nulla di HTML, XLM, XHTML si starà forse chiedendo cosa sia stato detto fino ad ora, ne avrebbe tutte le ragioni, ma vorrei tranquillizzarlo: questa premessa è stata fatta soltanto per chi ha già un sito e volesse convertire le proprie pagine web da HTML a XHTML.

Dalla prossima lezione inizieremo partendo proprio da zero e sarà così possibile apprendere con facilità cosa e come fare per iniziare finalmente a creare la nostra pagina web. Nessuna presunzione, lo ripeto, XHTML è qualcosa di decisamente più complesso di come sarà illustrato in questa guida, ma questa è un "primi passi" e come tale introdurrà l'argomento, fornendo però tutto il necessario e rimandando alla letteratura specializzata per ogni eventuale approfondimento.

Se avete domande da fare potete scrivere sul forum di supporto, gratuito e aperto a tutti in apposita area XHTML.



Aprofondimwnti-------
                                    /

XHTML

Da Wikipedia, l'enciclopedia libera.

 

L'XHTML (acronimo di eXtensible HyperText Markup Language) è un linguaggio di markup che associa alcune proprietà dell'XML con le caratteristiche dell'HTML: un file XHTML è un pagina HTML scritta in conformità con lo standard XML.

Il linguaggio prevede un uso più restrittivo dei tag HTML; solo la struttura della pagina è scritta in XHTML, mentre il layout è imposto dai fogli di stile a cascata (CSS, Cascading Style Sheets).

L'XHTML è nato ufficialmente il 26 gennaio 2000 come standard W3C, e può essere definito tecnicamente una riformulazione dell'HTML 4.01 come applicazione dell'XML 1.0, una sorta di transizione tra questi due linguaggi.

Indice

[nascondi]

Cenni generali [modifica]

L'XHTML è il successore diretto e la versione più aggiornata dell'HTML. La necessità di un linguaggio dotato di una sintassi meglio definita rispetto a quella dell'HTML cominciò ad essere avvertita quando si diffuse l'uso di inviare pagine web ai nuovi dispositivi apparsi sul mercato diversi dai tradizionali computer, come ad esempio piccoli apparecchi portatili, dotati di risorse hardware e software non sufficienti ad interpretare il linguaggio HTML. Va tenuto presente che più generica è la sintassi di un linguaggio di programmazione, più difficile risulta realizzare dispositivi in grado di interpretarlo correttamente. Una specifica Document Type Definition (DTD) definisce l'insieme di regole mediante le quali un dato documento può essere renderizzato (cioè rappresentato correttamente) dall'XHTML.

La maggior parte dei browser attualmente più diffusi è già in grado di renderizzare correttamente i documenti XHTML. Ma anche i browser più vecchi sono solitamente in grado di interpretare i documenti XHTML, poiché questo linguaggio è in buona parte un sottoinsieme dell'HTML. Lo stesso vale anche in senso inverso: quasi tutti i browser compatibili con l'XHTML renderizzano correttamente i documenti HTML. Secondo un'opinione diffusa, questo alto grado di compatibilità sta rallentando il passaggio da HTML a XHTML. Per sfruttare appieno le potenzialità dell'XHTML è necessario usarlo in abbinamento ai fogli di stile, in modo da scrivere un codice per pagine web in cui la presentazione è separata dalla struttura dei dati.

L'XHTML Transitional (vedi oltre) si distingue dall'HTML principalmente perché è più compatibile con le specifiche dell'XML. La differenza più importante è che tutti i tag devono essere ben strutturati, cioè obbedire ad una serie di regole che ne assicurino la coerenza reciproca. Inoltre i tag devono essere sempre scritti in lettere minuscole, convenzione in contrasto con l'abitudine invalsa a partire dalla versione 2.0 di HTML, quando la maggior parte dei programmatori preferiva le maiuscole. Nell'XHTML tutti gli attributi (compresi quelli numerici) devono essere scritti fra virgolette, cosa facoltativa in SGML e HTML, in cui le virgolette possono essere omesse se il contenuto è una stringa alfanumerica o comprende alcuni altri caratteri speciali riservati. Tutti gli elementi del linguaggio devono inoltre essere terminati, compresi quelli vuoti (ad esempio img e br). Per eseguire la terminazione in modo implicito si può aggiungere una "/" di chiusura al tag di apertura (es: <img … /> e <br />). Altri tipi di abbreviazione non sono invece permessi (es: <option selected>).
Per ulteriori dettagli si rinvia alle specifiche W3C XHTML.

Le pagine di Wikipedia sono attualmente scritte usando la versione 1.0 Transitional (di transizione) di XHTML.

Versioni di XHTML [modifica]

Come sopra accennato, XHTML è una riformulazione di HTML come linguaggio XML. Quindi, come è logico aspettarsi, ne esistono tre differenti DTD, corrispondenti ad altrettante DTD di HTML 4.01

  • XHTML 1.0 Transitional: nato per favorire la migrazione dal HTML 3.2, o per uso insieme a link e frame in-line
  • XHTML 1.0 Strict: separa il contenuto dal layout, cioè dalla presentazione, che ora viene definita mediante i CSS (vedi sopra)
  • XHTML 1.0 Frameset: per suddividere la finestra visualizzata dal browser in diversi frame (sottofinestre)

L'ultima versione di XHTML è la:

  • XHTML 1.1: avendo un'unica DTD, la strict, ne viene omessa la dicitura. Non accetta né tag o attributi deprecati né la struttura a frameset. Questa versione inoltre supporta i tag del cosiddetto markup ruby, che consente di visualizzare i set di caratteri delle lingue orientali.

Esistono altre versioni di XHTML, studiate per dispositivi portatili:

  • XHTML Basic: versione speciale semplificata dell'XHTML, per dispositivi le cui risorse non sono in grado di supportare il set completo di comandi e tag XHTML, come ad esempio i telefoni cellulari. È da considerare come la controparte degli esistenti linguaggi WML e C-HTML.
  • XHTML Mobile Profile: basato sulla versione Basic di XHTML, sviluppato da Nokia per aggiungere all' XHTML Basic funzionalità specifiche dei terminali telefonici.

Le specifiche della versione XHTML 2.0 sono tuttora in via di definizione, non senza contrasti fra le varie parti interessate, visto che sono sorti vari problemi di compatibilità con le versioni precedenti. Ciò è dovuto al fatto che si tratta a tutti gli effetti di un nuovo linguaggio di markup, piuttosto che di un'evoluzione della precedente versione.

Validazione dei documenti XHTML [modifica]

Un documento XHTML che risponde alle specifiche è definito documento valido ovvero well formed. Teoricamente, tutti i browser dovrebbero essere conformi agli standard W3C, e quindi essere in grado di renderizzare i documenti su qualsiasi piattaforma. La validazione (cioè il controllo sintattico) dei documenti XHTML non assicura tuttavia al 100% la compatibilità con tutti i browser, ma è comunque fortemente consigliata. Uno strumento per controllare la validità dei documenti è disponibile presso il Markup Validation Service del W3C ( vedi [1]).

Come sopra accennato, perché un documento possa essere validato, deve contenere un elemento chiamato DTD (Document Type Definition o Document Type Declaration), da posizionare preferibilmente all'inizio del documento. I tipi più comuni di DTD, e le relative sintassi dichiarative, sono:

XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

Il tipo di codifica applicata (character encoding) deve essere sempre specificato all'inizio del documento. Ciò consente al validatore, come ad esempio quello prima citato, messo a disposizione dal W3C, di controllare se il documento risponde allo standard. Il processo di validazione identifica e fornisce una descrizione degli errori rilevati (error log).

Alcuni degli errori più comuni che i programmatori commettono scrivendo codice XHTML sono:

  • Elementi privi di terminatore (come sopra detto l'XHTML è molto più restrittivo dell'HTML sotto questo aspetto).
  • Omissione del testo da visualizzare in alternativa ad un'immagine (da usare mediante l'attributo alt, in modo da consentire la compatibilità con dispositivi il cui display non supporta immagini).
  • Inserire testi direttamente nel corpo del documento.
  • Annidare[1] blocchi di codice all'interno di elementi inline.
  • Dimenticare le virgolette per delimitare gli attributi.
  • Annidare gli elementi in modo non valido.
  • Usare in modo scorretto entità varie (ad esempio & anziché &amp;).
  • Usare le maiuscole per i nomi dei tag e/o degli attributi.

Questo non è, ovviamente, un elenco esauriente degli errori, ma solo un'indicazione di quelli che i programmatori commettono più frequentemente. Quando una pagina è validata utilizzando il servizio di validazione del W3C, il validatore restituisce una piccola icona che può essere inserita nel documento per comprovarne la conformità allo standard. Il W3C fornisce lo stesso servizio anche per i fogli di stile CSS e per i documenti HTML.

Un'interfaccia conforme allo standard XHTML 1.0 Strict per Plone [modifica]

Plone è un CMS (Content Management System) open source che consente la gestione di siti internet in modo facile, veloce e collaborativo, prestando particolare attenzione all'usabilità e all'accessibilità. Per rendere conforme allo standard XHTML 1.0 Strict un sito web Plone esiste un prodotto chiamato ItalianSkin (IS), che fornisce un'interfaccia rispondente a queste esigenze per ogni parte del sito, oltre ad offrire ulteriori migliorie in ottica accessibile, sempre in ottemperanza ai requisiti definiti nella legislazione italiana per quanto riguarda l'accessibilità dei siti web. Il prodotto è open source, completamente gratuito e rilasciato sotto licenza GPL. Nella sezione Collegamenti esterni di questa pagina o cliccando su ItalianSkin si trova il link che permette di scaricare gratis il prodotto e di contribuire al suo miglioramento.                                

Questo sito web è stato creato gratuitamente con SitoWebFaidate.it. Vuoi anche tu un tuo sito web?
Accedi gratuitamente