Xhtml

3.4255910987222 (719)
Inviato da nono 14/04/2009 @ 09:07

Tags : xhtml, programmazione, computer, high tech

ultime notizie
Sviluppare il Web mobile - Programmazione.it
Visto che il linguaggio ufficiale sarà XHTML-MP, abbiamo una prima introduzione con l'elenco dei nuovi tag e l'analisi delle best practices, che impongono alcune regole minime per essere compatibili con tutti i dispositivi mobili....
Come convertire un mockup grafico in codice XHTML/CSS - Blogosfere
Ecco allora che leggendo l'articolo How to Convert a Photoshop Mockup to XHTML/CSS scritto da Chris Spooner per line25.com potremo apprendere tutti i trucchi ei segreti di chi fa questa operazione per professione tutti i giorni (o quasi immagino)....
Mozilla Jetpack: le estensioni Firefox diventano widget - Hi-Tech Italy
Grazie a questa soluzione, ancora sperimentale e incompleta ancora in via di implementazione, sarà possibile utilizzare questa serie di librerie per creare nuove estensioni nei tipici linguaggi di programmazione web, come XHTML (HTML e CSS) e...
Il Palm Pre debutterà il 6 giugno negli USA con l'operatore Sprint - Computer Magazine
Pre è il primo smartphone ad utilizzare il nuovo sistema operativo webOS, basato su tecnologie Web, come CSS, XHTML e JavaScript. È dotato di uno schermo sensibile al tocco da 3,1” compatibile con la tecnologia multitouch, dalla risoluzione di 320x480...
- NEA Srl: Nuove Energie Alternative - Comunicati-Stampa.net (Comunicati Stampa)
Il progetto è stato realizzato dalla nostra web agency con tecnologie PHP, XHTML e CSS. Il sito ha ottenuto la validazione, da parte del W3C, sul codice XHTML 1.1 e CSS 2.1. Abbiamo sviluppato un prodotto tecnologicamente all'avanguardia, stabile,...
Alcuni consigli sull'uso di codice HTML (1/2) - Programmazione.it
Chiudere sempre i tag: prima dell'XHTML era piuttosto comune trovare codici con molti tag senza chiusura, e sebbene tollerata nell'HTML, questa pratica deve essere assolutamente evitata; dichiarare un DTD corretto: la scelta del DTD va fatta con...
- Lista Civica 'IL GELSO' - Comunicati-Stampa.net (Comunicati Stampa)
Il progetto è stato realizzato dalla nostra azienda con tecnologie XHTML 1.1 e CSS 2.1. Il sito è risultato conforme alle validazioni, da parte del W3C, sulle tecnologie web utilizzate. Abbiamo sviluppato un prodotto semplice da navigare,...
E' ON-LINE IL NUOVO SITO DI EUROPEO: www.europeo.it - informazione.it - Comunicati Stampa (Comunicati Stampa)
Sfogliando le varie sezioni è possibile recuperare, in maniera intuitiva ed efficace, tutte le informazioni desiderate : questo grazie all'utilizzo del linguaggio XHTML e di componenti in tecnologie FLASH. Obiettivo fondamentale del nuovo sito: avere...
Esce Oscommerce v.3.0 Alfa - OpenItalia.net
Prevede anche alcune nuove funzionalità built-in come la grafica templatizzata in XHTML/CSS, ottimizzazione per motori di ricerca, nuovo installatore, accesso amministrativo a livelli, un editor HTML per la descrizione prodotti, uso di GeoIP, JSON,...

XHTML

L'XHTML (acronimo di eXtensible HyperText Markup Language, Linguaggio di marcatura di ipertesti estensibile) è un linguaggio di marcatura 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 sia in termini di validità che in termini di sintassi, in modo da descrivere solo la struttura logica della pagina, mentre il layout e la resa grafica sono imposti dai fogli di stile a cascata (Cascading Style Sheets, CSS).

L'XHTML è nato ufficialmente il 26 gennaio 2000 come standard del World Wide Web Consortium (W3C), e può essere definito tecnicamente una riformulazione dell'HTML 4.01 in XML 1.0; è una sorta di "ponte" tra questi due linguaggi.

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.

Tutti i browser attualmente più diffusi sono in grado di rendere 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 e le sue regole sintattiche sono compatibili all'indietro. Lo stesso vale anche in senso inverso: quasi tutti i browser compatibili con l'XHTML rendono correttamente anche i documenti HTML.

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 (XHTML di transizione, vedi oltre) si distingue dall'HTML principalmente perché è più compatibile con le specifiche dell'XML e dall'XHTML stretto (XHTML strict) per una maggior tolleranza nei confronti di definizioni deprecate.

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, e devono 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>).

La sintassi prevede inoltre che i tag debbano 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.

Per ulteriori dettagli si rinvia alle specifiche W3C XHTML.

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

L'ultima versione di XHTML è la XHTML 1.1, che è una riformulazione dell' XHTML Strict, quindi ha una sola DTD. Non accetta i tag e gli attributi più criticati della precedente versione (come la struttura a frameset). Questa versione invece supporta i tag del cosiddetto markup «ruby», che consente di visualizzare i set di caratteri delle lingue orientali.

Lo sviluppo delle specifiche della versione XHTML 2 ha subito un rallentamento a causa di grossi problemi di compatibilità, dato che si sarebbe trattato a tutti gli effetti di di markup quasi completamente nuovo piuttosto che di un'evoluzione dell'XHTML 1.1. In parallelo, ha ripreso slancio lo sviluppo di una nuova serie di specifiche dell'HTML, l'HTML 5, che riprende alcune delle definizioni e degli approcci concepiti per XHTML 2 ma adattati per garantire un funzionamento compatibile con gli attuali browser. Secondo le intenzioni del W3C, le due specifiche sono nate per coesistere.

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 rendere 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, principalmente per limiti di questi ultimi, ma è comunque fortemente consigliata. Uno strumento per controllare la validità dei documenti è disponibile presso il Markup Validation Service del W3C ( vedi ).

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).

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.

Per la parte superiore



XHTML Mobile Profile

XHTML Mobile Profile (XHTML MP) è un linguaggio di markup, progettato specificatamente per telefoni cellulari e altri apparecchi con risorse limitate.

È un tipo di XHTML definito dalla Open Mobile Alliance. XHTML-MP è derivato da XHTML 1.1 Basic Profile aggiungendo XHTML Modules (e altri moduli nelle versioni più recenti, anche se questo non assicura una completa compatibilità con i browser XHTML-MP).

Lo standard raccomandato è l'1.1 DTD, concluso ad ottobre 2006. I lavori sulla versione 1.2 DTD continuano ma una data di rilascio non è ancora nota.

Il tipo MIME per XHTML Mobile Profile è "application/vnd.wap.xhtml+xml". Gli user agent compatibili dovrebbero accettare anche "application/xhtml+xml" and "text/html".

La versione 1.2 aggiunge il support per gli oggetti e le form. La versione 1.1 ha aggiunto il supporto per lo scripting ECMAScript Mobile Profile. La versione 1.0 ha esteso XHTML 1.1 Basic Profile con alcune rappresentazioni di elementi e un supporto di scripting di base.

Infine la versione 1.2 include uno specifico modulo Open Mobile Alliance (OMA), il "Text Input Modes", per usare i diversi tipi di input-mode permessi sui cellulari.

Molti problemi sorgono quando il contenuto scritto in XHTML è visualizzato su apparecchi diversi. Alcuni rispetteranno i colori specificati nel CSS mentre alcuni non lo faranno, altri visualizzeranno le tabelle e altri no, solo per citare alcuni esempi. Sviluppare un'applicazione che si adatti ai device, significa scrivere contenuti diversi per apparecchi diversi, in base alle loro capacità. Questo può portare ad un'enorme complessità dato il numero elevato di apparecchi diversi presenti sul mercato con diverse caratteristiche hardware (dimensione dello schermo, capacità sull'uso dei colori, tasti, memoria e velocità) e browser. L'aggiornamento software dei browser per cellulari è in ogni caso molto più difficile di quello dei broswer per PC, con il risultato che il software installato rimane in uso fino quando il telefono non viene dismesso.

Alcune iniziative presentano una soluzione a questo problema. La maggior parte fornisce un linguaggio proprietario per scrivere contenuti WAP che verranno visualizzati in maniera diversa (in XHTML-MP, WML, CHTML, etc) a seconda dell'apparecchio che ne ha fatto richiesta. Un'altra libera iniziativa è WURFL che usa una configurazione XML gerarchica in grado di mappare centinaia di caratteristiche dei vari device, e un layer di astrazione (WALL: Wireless Abstraction Layer) che permette di scrivere tag che sono convertiti automaticamente nel tipo di mark-up supportato dal device.

Per la parte superiore



XHTML 2

XHTML 2 è un linguaggio di progettazione per il web ancora in fase di specifica presso il World Wide Web Consortium. Nelle intenzioni, rappresenta l'evoluzione dell'attuale XHTML 1.0.

Si caratterizza principalmente per una struttura modulare, in cui le regole per l'impostazione dei vari elementi di una pagina web (suddivisione del testo; moduli elettronici; dati tabellari eccetera) sono descritte in moduli separati, che possono evolvere indipendentemente tra loro.

Rispetto alla prima versione di XHTML, vengono rese più forti le caratteristiche XML per le regole sintattiche, inoltre vengono approfondite ed estese le possibilità di controllo sui moduli elettronici (form), introducendo strutture più complesse ed elementi di elaborazione.

La definizione procede in parallelo a quella di HTML 5, che viene considerato dal World Wide Web Consortium come uno standard di markup complementare rispetto a XHTML 2.

Per la parte superiore



Cascading Style Sheet

Esempio di foglio di stile

I fogli di stile a cascata, meglio noti con l'acronimo CSS (dall'inglese Cascading Style Sheet) e detti anche semplicemente fogli di stile, vengono usati per definire la rappresentazione di documenti HTML, XHTML e XML. Le regole per comporre i fogli di stile sono contenute in un insieme di direttive (Recommendations) emanate a partire dal 1996 dal W3C. L'introduzione dei fogli di stile si è resa necessaria per separare i contenuti dalla formattazione e permettere una programmazione più chiara e facile da utilizzare, sia per gli autori delle pagine HTML che per gli utenti.

Una pagina web è formata fondamentalmente da due elementi: i contenuti veri e propri e la formattazione ovvero l'aspetto con cui i contenuti sono mostrati all'utente.

Il linguaggio HTML (e la sua evoluzione XHTML) ha come scopo quello di gestire i contenuti, specificandone la struttura attraverso tag diversi. Ogni tag (ad esempio <h1> o <p>) specifica un diverso ruolo dei contenuti che contrassegna (quindi il tag <h1> definirà un'importanza maggiore del tag <p>).

I browser che interpretano il codice (X)HTML mostrano all'utente formattazioni predefinite per ogni tag che incontrano (così ad esempio i contenuti marcati con il tag <h1> avranno carattere 18pt e i contenuti marcati da <p> avranno carattere 12pt). Tuttavia questa formattazione è completamente sotto il controllo dell'utente, che può modificarla nelle Impostazioni del suo browser.

Per permettere agli autori di definire l'aspetto delle loro pagine, dal 1993 in poi Netscape Navigator ed Internet Explorer, i due browser che si disputavano gli utenti nella nota guerra dei browser, presentarono tag proprietari, ovvero non aderenti agli standard e non compatibili con i browser concorrenti. Un esempio di questi tag è <font>.

Si tende ad evidenziare anche un'ulteriore questione, nelle pagine web non standard, ovvero l'uso del tag <table> (le tabelle) per realizzare l'impaginazione delle pagine web. Questo viene considerato dai puristi come inaccettabile in quanto le tabelle sono pensate per impaginare dati tabulari e non layout web. In realtà l'unico svantaggio serio di questo sistema è l'incredibile peso delle pagine, come già indicato al problema 1.

I CSS 1 sviluppavano un'idea semplice ma efficace, ma nonostante le loro grandi potenzialità non ebbero successo a causa della mancanza di browser in grado di supportarli.

Per includere nuove funzionalità e rendere i CSS un linguaggio ben supportato, nel 1998 il W3C emanò le specifiche CSS 2 e nel 2004 le specifiche CSS 2.1. I CSS 2 sono la naturale evoluzione dei CSS 1 ed offrono potenti soluzioni per risolvere soprattutto il problema tre, con la possibilità di creare fogli di stile separati per i dispositivi portatili. Anche il problema due è ormai pienamente risolvibile, scrivendo una pagina (X)HTML esclusivamente indirizzata alla struttura e ai contenuti e manovrandola poi esclusivamente con i CSS per impaginarla. Con la comparsa di Internet Explorer 5, di Firefox e di Opera 7, i CSS 2 hanno potuto avvalersi di browser in grado di interpretarli e sono quindi entrati a far parte del codice di molti siti web.

Le specifiche CSS 3 non sono state ancora rilasciate, sebbene il W3C pubblichi costantemente informazioni sulle novità in fase di sviluppo. I CSS 3 dovrebbero presentare soluzioni per la correzione di alcuni bug di interpretazione di Internet Explorer, migliorie nella gestione degli sfondi e una soluzione per realizzare i bordi arrotondati la cui realizzazione affligge i webdesigner da tempo.

Gli elementi sono illustrati di seguito.

Le pseudoclassi identificano elementi in base alle loro proprietà.

Gli pseudoelementi identificano solo una parte di un elemento, senza la necessità di utilizzare la marcatura (X)HTML.

Identificano solamente gli elementi che si trovino in una particolare condizione di discendenza nella struttura (X)HTML della pagina.

Il selettore di attributi permette, tramite la sintassi che segue, di identificare elementi (X)HTML in base ai loro attributi.

Questa regola si applica solo agli elementi <a> che presentano l'attributo title="Esempio". I selettori di attributi sono molti e permetterebbero un controllo eccellente della pagina, ma Internet Explorer non li supporta ed il loro uso è quindi molto limitato.

La stringa inherit specifica che la proprietà deve ereditare il valore dagli elementi da cui l'elemento discende.

La stringa auto indica che il browser deve utilizzare il suo valore di default.

Se i numeri sono contraddistinti da un'unità di misura è necessario che tale unità sia espressa (tranne che nel caso dello zero). Tra il numero e l'unità non devono esserci spazi, come nell'esempio che segue.

Il supporto completo e corretto delle specifiche CSS non è offerto da nessun browser attuale. Tuttavia esistono browser che si avvicinano molto a questo risultato ed altri che invece ne sono molto lontani. La lista che segue è di motori di rendering perché a loro è assegnato il compito di formattare la pagina secondo le istruzioni CSS.

Oltre alle differenze di compatibilità, ogni motore di rendering aggiunge ai css standard nuovi elementi o proprietà. Esempi di queste situazioni sono tutti i css che offre gecko che iniziano con "-moz", come per esempio : -moz-border-radius(una proprietà per arrotondare i bordi di un elemento) o -moz-grabbing (un valore di cursor che fa apparire il mouse come una manina).

Una utilissima funzione dei CSS è la possibilità di essere applicati solo sui dispositivi (media) specificati dall'autore. La sintassi (X)HTML da utilizzare è la seguente.

Sebbene il numero dei dispositivi gestibili tramite CSS sia notevole, soltanto i primi tre sono supportati in maniera sufficiente. Il media screen è quello standard cui si fa riferimento. Il media handheld è specifico per i palmari, ma alcuni browser per palmari tentano, spesso con scarso successo, di interpretare anche i fogli marcati con screen, per cui si preferisce in genere marcare con handheld sia il foglio per lo schermo che quello per il palmare e poi usare quest'ultimo per sovrascrivere le istruzioni del primo. Il media print codifica la pagina per la stampa, è supportato discretamente. Un supporto completo è garantito da Opera.

Per attivare e disattivare i fogli di stile l'utente può ricorrere all'apposito menu del suo browser, tuttavia Internet Explorer non offre questa possibilità quindi è necessario creare uno script Javascript che svolga la funzione di sostituire i fogli. Il codice è stato pubblicato la prima volta su (EN) www.alistapart.com ed è ora comunemente utilizzato. Tuttavia se questo script è facile da mettere in opera per gli sviluppatori, richiede un browser moderno con un buon supporto del DOM, oltre che avere attivati sia Javascript e i cookie. Un sistema più complesso ma molto più robusto può essere uno script lato server come PHP. Un esempio è disponibile sempre sullo stesso sito.

Per la parte superiore



Wget

GNU Wget è un software per lo scaricamento di file da Internet, parte del progetto GNU. Supporta i protocolli HTTP, HTTPS e FTP.

È uno strumento non interattivo che funziona tramite linea di comando e per questo può essere utilizzato in script, aggiunto tra le righe di crontab e usato senza bisogno di ricorrere a X-Window.

Wget può seguire i collegamenti nelle pagine HTML e XHTML e creare la versione locale di un sito remoto, ricostruendo interamente la struttura delle directory originale. Questo comportamento è ciò che normalmente si intende per "download ricorsivo". In questo, Wget rispetta i cosiddetti Robots Exclusion Standard (cioè i file /robots.txt). Wget può essere impostato per convertire i collegamenti delle pagine scaricate per permettere la visione senza bisogno di collegamento a Internet.

Wget è stato progettato per essere affidabile su collegamenti di rete lenti o instabili; in caso d'errore wget continuerà a provare finché non riuscirà a scaricare l'intero file. Nel caso il server lo supporti, ricomincerà a scaricare da dove si era interrotto.

Nato nel 1996, nel periodo in cui il web è diventato famoso, è incluso in Unix e Linux. Scritto in C portabile, può essere installato in tutti i sistemi Posix. In particolare esistono versioni per Mac OS X, Microsoft Windows e OpenVMS.

Esistono anche programmi grafici che permettono di usare Wget con mouse e finestre, come gwget per GNOME e wGetGUI per Windows.

GNU Wget è stato scritto da Hrvoje Nikšić con la collaborazione di altre persone come Dan Harkless, Ian Abbott e Mauro Tortonesi. Gli altri contribuitori importanti sono scritti nel file AUTHORS incluso nei sorgenti e che accompagna i vari binari, tutti gli altri sono riportati nei ChangeLog. L'attuale manutentore di wget è Micah Cowan.

Per la parte superiore



Source : Wikipedia