Verificare la disponibilità delle funzionalità di HTML5 sulle diverse piattaforme desktop e mobile

di Matteo Casati,

Comunemente, parlando di HTML5, intendiamo un vasto insieme di specifiche che comprendono nuovi elementi di markup, funzionalità multimediali (audio e video), API JavaScript, CSS3, SVG, ecc.
Alcune di esse sono da tempo supportate praticamente da tutti i principali browser e sono disponibili su ogni piattaforma (desktop Windows, Mac OSX e Linux, tablet e smartphone), altre invece solo in pochi scenari specifici (in particolare le specifiche non ancora stabili, implementate in via sperimentale solo da alcuni vendor).

In uno scenario così frammentato diventa difficile districarsi per decidere se una soluzione ha senso essere adottata oppure no o se conviene fornire anche un'implementazione alternativa (ad esempio nel caso di un lettore multimediale, specificando anche un player basato su plugin come Silverlight o Flash).

Quando posso usare...

A questo scopo può essere utile consultare il sito http://caniuse.com che, per ogni funzionalità di HTML5, fornisce una tabella che riepiloga il supporto della stessa in base al browser e alla relativa versione e un riepilogo complessivo (basato sulle statistiche di diffusione dei browser di StatCounter).
Ad esempio la semi-trasparenza per le immagini in formato PNG è supportata da tutti ad eccezione di Internet Explorer 6 ed è disponibile quindi su oltre il 93% dei client, mentre i font definiti in formato SVG hanno una bassa compatibilità (circa il 34%, non essendo implementati da IE, Firefox, OperaMini e su Android 3.0 e precedenti).

Compatibilità di HTML5 con dispositivi mobile e tablet

Per quanto riguarda lo sviluppo per dispositivi mobile il sito http://mobilehtml5.org/ fornisce un livello di dettaglio maggiore rispetto a caniuse.com (che contempla solo Safari Mobile per iOS, Android Browser e Opera Mobile) schematizzando il supporto alle principali feature di HTML5 per le seguenti piattaforme:

  • Safari Mobile su iOS (iPhone, iPad)
  • Android Browser (telefoni / tablet)
  • Blackberry Browser (telefoni / tablet)
  • Nokia Browser (Meego / Symbian)
  • Internet Explorer (Windows Phone)
  • Opera (Mobile / Mini)
  • Firefox (Android)
  • webOS Browser

Come utilizzare questi dati?

Tabelle riassuntive come quelle riportate dai siti indicati qui sopra non devono però essere utilizzate a livello di implementazione ma solo come indicatori statistici per guidare le nostre scelte in fase di progettazione, possibilmente incrociando i dati con le statistiche reali dei visitatori del sito o dell'applicazione o con eventuali requisiti imposti (ad esempio nel caso di un'app sviluppata ad hoc per un certo smartphone o per una Intranet dove il browser è imposto dall'amministratore).
In pratica è assolutamente da evitare la così detta browser detection (ovvero modificare il comportamento dell'applicazione in funzione dello user agent del client) in favore della feature detection (ovvero dal determinare applicativamente se una funzionalità è o meno disponibile e agire di conseguenza, tipicamente con implementazioni alternative o un gracefully degrade).

Link e riferimenti utili

Il nostro speciale sullo sviluppo web mobile
https://www.aspitalia.com/focuson/1267/Speciale-Web-Mobile-Costruire-Applicazioni-ASP.NET-JQuery-Mobile.aspx

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi