Prima di HTML5, ultima versione dello standard HTML che si è adattata in modo significativo alle esigenze del web moderno, includere un file audio in una pagina HTML richiedeva necessariamente l'utilizzo di un tag <object>
. Sebbene questo tag rimanga tuttora utilizzato (non solo per includere file audio), HTML5 ha introdotto un nuovo tag <audio>
pensato proprio per questa esigenza.
In questa lezione vedremo come utilizzare proprio il nuovo tag <audio>
introdotto con HTML5. Per farlo, iniziamo con un semplice esempio:
<audio controls>
<source src="musica.mp3" type="audio/mp3">
</audio>
Il primo attributo è controls
, e la sua presenza garantisce la presenza dei controlli utente per gestire la riproduzione del file audio. Omettere l'attributo controls
inserire un file audio in background
<bgsound>
Altri due attributi possibili per il tag <audio>
sono autoplay
e loop
: il primo forza l'audio ad essere eseguito automaticamente, mentre il secondo fa sì che esso venga automaticamente riprodotto a ciclo continuo.
All'interno del tag <audio>
vi è poi un elemento di tipo <source>
, mediante il quale possiamo specificare il file che ci interessa riprodurre. Nel precedente esempio, abbiamo specificato di riprodurre il file musica.mp3 tramite l'attributo src
, con l'accortezza di esplicitare anche il tipo di file (type="audio/mp3"
).
Poichè alcuni tipi di file non sono supportati da tutti i browser, è possibile specificare diversi tag <source>
. Ad esempio:
<audio controls>
<source src="musica.mp3" type="audio/mp3">
<source src="musica2.ogg" type="audio/ogg">
Il browser non supporta il tag audio
</audio>
In questo caso, il browser tenterà per prima cosa di riprodurre il file specificato nel primo tag <source>
. Se (e solo se), per qualche motivo, il file non potesse essere riprodotto, il browser proverà a riprodurre il secondo file, e così via per tutti i tag <source>
presenti. Per garantire, infine, la retrocompatibilità con le precedenti versioni di HTML, è possibile utilizzare una stringa (o dell'altro codice HTML) che verrà visualizzata nel caso in cui il browser non supporti il tag <audio>
.
Ulteriori informazioni (inclusa la tabella del supporto sui browser) ed esempi pratici sono disponibili nella lezione dedicata all'audio della guida ad HTML5.