Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Presentazione di XML con CSS

Definire caratteristiche presentazione per documenti XML con CSS
Definire caratteristiche presentazione per documenti XML con CSS
Link copiato negli appunti

A differenza di HTML, che è un linguaggio specifico di strutturazione e presentazione di documenti, XML è più generale e non ha una semantica di presentazione. Non è previsto alcun meccanismo predefinito per visualizzare i vari elementi di un documento.

Ad esempio, un documento XML visualizzato in un browser appare generalmente così com'è, al massimo con una indentazione e una colorazione dei tag impostata dal browser.

Un metodo per gestire la presentazione del contenuto di un documento XML consiste nell'utilizzare i Cascading Style Sheets (CSS).

È possibile utilizzare i CSS in modo analogo a come si utilizzano con HTML. Per ciascun elemento del documento XML che vogliamo formattare occorre definire una regola secondo lo schema:

selettore { proprietà: valore; proprietà: valore; ... }

Il selettore specifica a quale elemento la regola deve essere applicata, mentre la parte racchiusa tra parentesi graffe elenca le caratteristiche da impostare e il relativo valore.

È opportuno evidenziare una importante differenza tra l'utilizzo dei CSS per formattare documenti HTML e il loro uso per i documenti XML. In HTML la maggior parte dei tag ha una formattazione predefinita e pertanto un foglio di stile CSS consente di ridefinire tali impostazioni.

In XML i tag non hanno alcun significato di formattazione, pertanto è necessario specificare tutto. Ad esempio, senza l'opportuna indicazione il testo contenuto nei diversi elementi di un documento XML verrebbe visualizzato come un'unica stringa.

Per strutturare visivamente il documento dobbiamo indicare la modalità di visualizzazione di ciascun elemento tramite la proprietà display di CSS. Ad esempio, per formattare l'elemento paragrafo di un articolo possiamo definire una regola come la seguente:

paragrafo {display: block; font-size: 12pt; text-align: left}

Generalmente un foglio di stile CSS da applicare ad un documento XML viene salvato in un file di testo con estensione .css (in realtà l'estensione usata è irrilevante). Nel documento XML possiamo quindi inserire un riferimento ad esso mediante unìapposita direttiva di elaborazione, come nel seguente esempio:

<?xml-stylesheet type="text/css" href="stile.css" ?>

Questa dichiarazione fa in modo che un browser abilitato applichi le impostazioni del foglio di stile CSS specificato al documento XML.

I fogli di stile CSS sono pensati principalmente per il Web e mancano pertanto di alcune caratteristiche che possono risultare utili in ambiti diversi. Ad esempio, per la presentazione su supporti cartacei occorrerebbero maggiori funzionalità per l'impaginazione. tra le principali limitazioni, non è prevista la possibilità di estrarre il valore degli attributi degli elementi in modo da poterli visualizzare.

Considerando il seguente esempio

<articolo titolo="Guida ad XML">

non abbiamo la possibilità di visualizzare il titolo dell'articolo che è stato espresso come attributo dell'elemento <articolo>. Questo costringerebbe a dover strutturare un documento XML in funzione della sua formattazione con CSS, in evidente contraddizione con lo stesso concetto di foglio di stile che tende a separare la definizione dei dati dalla sua presentazione.

Inoltre, non sempre un documento XML descrive qualcosa di visualizzabile con un browser. Ad esempio, è possibile definire un linguaggio XML per la descrizione di immagini o di ambienti virtuali. In questo caso i CSS non sono di alcun aiuto nella presentazione del documento.

Per risolvere questi problemi il W3C ha definito un'insieme di specifiche volte a gestire in maniera altamente flessibile la presentazione e la trasformazione di documenti XML: l'eXtensible Stylesheet Language (XSL).

Ti consigliamo anche