IE9 e HTML5

Uno sguardo alle nuove caratteristiche di Internet Explorer 9 ed alle funzionalità supportate di HTML5.

La nuova versione di Internet Explorer si preannuncia molto interessante per gli sviluppatori, viste le numerose modifiche introdotte ed i miglioramenti al motore di rendering.

Si potrebbe discutere a lungo sui ritardi nell’introduzione di novità già presenti da tempo sui browser concorrenti, ma al momento la cosa più importante è capire cosa cambierà nel prossimo futuro.

Il supporto di HTML5

Seguendo la working draft del W3C, queste caratteristiche sono già state presentate come supportate da IE9:

Inoltre sono state introdotte altre novità interessanti, come il supporto a SVG.

Guida per sviluppatori

E’ stato realizzato anche un documento molto ben dettagliato destinato agli sviluppatori. Si tratta della Beta Guide for Developers, dove si parla di CSS3, DOM, SVG e HTML5.

La guida finché il browser non sarà rilasciato potrà subire dei cambiamenti, ma già adesso è un utile punto di riferimento.

E le vecchie versioni di IE?

Quello delle versioni obsolete non è un problema da sottovalutare. E’ difficile infatti trovare versioni obsolete di Firefox o Chrome, mentre è cosa nota l’incredibile resistenza di Explorer 6. Proprio per questo motivo conviene sfruttare JavaScript, scegliendo tra due soluzioni:

  • ie7.js: consente di adeguare IE6 agli standard, aggiungendo anche il supporto alle immagini png trasparenti
  • Modernizr: una libreria che individua le funzioni supportate dal browser utilizzato, aggiungendo all’elemento html delle classi (per esempio .borderradius, .audio, .opacity…). Non aggiunge nuove funzionalità ai browser obsoleti, ma permette di individuarne le mancanze e gestirli in maniera diversa.

Qualsiasi soluzione decidiate di adottare, è bene considerare le conseguenze: abbandonare il supporto a IE6 ormai non è una scelta sbagliata, ma significa escludere comunque una parte di utenti. Il mio consiglio è di fare le dovute considerazioni a seconda del target del vostro sito: se vi rendete conto che gli utenti di Explorer 6 sono ancora numerosi, un file JavaScript potrebbe salvarvi.

IE9 ed il supporto dei CSS3

IE9 potrà sfruttare tutti i selettori dei CSS3: solo Opera presenta ancora dei problemi.

La novità degli ultimi giorni riguarda Internet Explorer 9: la futura versione del browser Microsoft supporta infatti tutti i selettori dei CSS3.

Incredibile ma vero, nella tabella di compatibilità preparata in maniera eccellente da Quirksmode, IE9 entra infatti nel gruppo dei browser che possono utilizzare tutti i selettori più utili, compresi anche alcuni dei CSS 2.1.

I selettori supportati da Internet Explorer 9

CSS 2.1

  • :before e :after
  • :first-child
  • :focus

CSS 3

  • :empty
  • :enabled, :disabled e :checked
  • :first-of-type
  • :last-child
  • :last-of-type
  • :not
  • :nth-child()
  • :nth-last-child()
  • :nth-last-of-type()
  • :nth-of-type()
  • :only-child
  • :only-of-type
  • :root
  • ::selection
  • :target

In questa lista sono esclusi alcuni selettori che sono già supportati dalle versioni precedenti di IE.

Interessante notare che mentre le ultime versioni di Firefox, Safari e Chrome non hanno problemi, adesso è Opera l’unico browser ad essere rimasto indietro, con delle difficoltà di interpretazione dei selettori :nth-child() ed :nth-of-type(). Opera infatti non riesce ancora a capire il funzionamento di queste regole, utili ad esempio per evidenziare gli elementi pari di una lista, o dare alternativamente a delle immagini float:right e float:left.

Implicazioni future

Questo ovviamente non significa che con l’uscita di Explorer 9 i selettori dei CSS3 potranno essere usati senza problemi (le versioni precedenti ci faranno compagnia per molto tempo), ma ci stiamo avviando verso un futuro più semplice per gli sviluppatori. L’uso di queste regole infatti consentirà di eliminare id e classi inutili dall’HTML, alleggerendo la struttura delle pagine.

Per il momento non resta che sperimentare ed affidarsi se necessario a soluzioni come ie-css3.js, aspettando la scomparsa dei browser più obsoleti.

Addio Internet Explorer 6

E’ finalmente arrivato il momento di trascurare la versione più odiata del browser Microsoft.

Sembrava impossibile fino a qualche mese fa: IE6, fonte di preoccupazioni e ore di lavoro aggiuntive su progetti ormai chiusi, è destinato a scomparire. L’ultima verifica che ho fatto risale ad appena due giorni fa: chiedendo su vari network come comportarmi con il suo supporto in un progetto che utilizza diverse png trasparenti, il consiglio quasi unanime è stato di lasciar perdere.

E’ iniziato tutto con una domanda su Twitter, rimbalzata poi su FriendFeed e Facebook:

in dubbio per un nuovo sito, già abbastanza carico di JavaScript: usare un js anche per i png trasparenti su IE6 o lasciar perdere?

La discussione che ne è seguita su FriendFeed è chiara: in caso di siti con target particolari potrebbe esser fatta un’eccezione, ma se il cliente non lo richiede in maniera esplicita, è giunta l’ora di abbandonare il supporto a questo browser.

Le risposte ottenute su Twitter sono ancora più lapidarie: Mushin e gfields suggeriscono di lasciar perdere ed anche netfranz concorda, pur consigliando una eventuale soluzione JavaScript. Solo Lauryn propone di utilizzare delle gif alternative, altro metodo valido.

Su Facebook infine sono arrivati altri inviti ad abbandonare IE6: il quadro generale è chiaro.

Quasi due anni fa sostenevo su questo blog come fosse troppo presto per dimenticarsene, ma adesso la situazione è definitivamente cambiata. Sono sempre più i siti importanti che non vengono visualizzati correttamente su Explorer 6, ed è giusto così. E’ giusto che venga fatto qualche test per assicurarsi che i siti rimangano comunque leggibili, ma non è più tempo di preoccuparsi di errori grafici secondari e del mancato allineamento degli elementi della pagina. Se avete ancora dubbi, potete spingere i vostri utenti ad aggiornare il browser, ma è finalmente ora di guardare avanti.

Come continuare ad offrire un servizio di qualità

In un quadro dove IE6 non ha più grande rilevanza, rimane fondamentale assicurare la qualità dei propri progetti web. Un tempo poteva essere garantita l’ottimizzazione cross-browser anche su IE6, ora è il momento di pensare a ciò che ci riserverà il futuro.

Alcuni attributi e selettori dei CSS3 possono ad esempio già essere utilizzati con successo: il progressive enhancement può offrire un’esperienza migliore ai visitatori che utilizzano browser evoluti, perchè non sfruttarlo? Text-shadow e border-radius sono già a disposizione, non è sbagliato iniziare ad usare queste proprietà, anzi è il momento giusto per osare.

Avete avuto esperienze negative con IE6? Se volete raccontarle o pensate che sia ancora troppo presto per abbandonarlo, dite la vostra nei commenti.

Spingere gli utenti ad aggiornare Explorer 6

Alcuni consigli pratici per incentivare l’aggiornamento di IE6.

Su questo blog ci sono state numerose discussioni su Internet Explorer 6 e su quanto renda complicata la vita degli sviluppatori. E’ possibile rimanere passivi e aspettare la sua lenta morte, ma non è detto che questo sia l’atteggiamento migliore. Ogni web designer infatti può dare un contributo alla sparizione di questo browser, che esiste dal 2001.

Le soluzioni possibili

Il modo migliore per far capire ad un utente che il suo browser è obsoleto, è presentargli una versione del sito alternativa. Sfruttando i commenti condizionali è possibile fornire ad IE6 un CSS su misura:

<!--[if lte IE 6]>
<link rel="stylesheet" type="text/css" href="http://www.sito.com/css/ie6.css" />
<![endif]-->

In questo modo tutte le versioni di Explorer precedenti alla 7 vedranno il sito in maniera diversa: potrete divertirvi come volete con questo foglio di stile. Un eccellente esempio di personalizzazione è offerto da questo sito, che con IE6 appare interamente in bianco e nero.

Anche su TomStardust.com ho voluto fare qualcosa: adesso navigando con il browser Microsoft l’header appare diverso, e compare anche un avviso che invita il visitatore ad aggiornare. Tutto è collegato ad una nuova pagina creata per l’occasione, con i link per il download dei migliori browser. Come avrete capito non sono comunque a favore delle soluzioni drastiche: è bene che i contenuti siano accessibili in ogni caso.

TomStardust.com: versione per Explorer 6

La soluzione definitiva?

Ovviamente questi interventi non potranno portare in tempi brevi alla sparizione di IE6. Molti utenti continueranno ad utilizzarlo perchè non possono fare altrimenti, magari per obblighi aziendali.

E’ comunque importante dare un segnale: esistono già diverse campagne di sensibilizzazione e siti come Facebook da tempo presentano avvisi agli utenti di Explorer 6. Il 2009 probabilmente non vedrà sparire questo browser, ma potrebbe essere l’anno della svolta.

Microsoft non mantiene le promesse su IE8?

Nella beta2 di IE8, i siti delle intranet vengono visualizzati in modalità non standard a causa di un’impostazione di default. Le promesse della Microsoft vanno in fumo?

E’ passato diverso tempo dal primo annuncio riguardante Internet Explorer 8, ed una delle promesse più eclatanti da parte della Microsoft riguardava la modalità Super-Standard. Questa modalità, capace di far visualizzare le pagine in maniera aderente agli standard web, sarebbe stata attiva di default.

Con l’uscita della beta2 di IE8 però, Hakon Lie di Opera ha pubblicato su The Register una sua scoperta: un’impostazione del nuovo browser forza tutti i siti delle intranet ad utilizzare il vecchio tipo di rendering, quello di IE7, chiamato Compatibility View.

La cosa ha ovviamente suscitato polemiche, accusando la Microsoft di non rispettare le promesse fatte: ma siamo sicuri che questa impostazione sia davvero così negativa?

Diciamolo chiaramente: in molte aziende le intranet sono realizzate male, e sarebbero impossibili da utilizzare con un browser che rispetti gli standard. Scenario paradossale, ma realistico, soprattutto in Italia. Cambiare browser renderebbe impossibile lavorare, e la Microsoft ne è consapevole.

Introdurre un’impostazione del genere consente di evitare problemi, garantendo su tutti gli altri siti una visualizzazione ottimale. Dal mio punto di vista concordo con Jonathan Snook, questa non è una tragedia: inutile conservare posizioni troppo zelanti sugli standard web.

Se vogliamo che Explorer 8 si diffonda tra gli utenti che non passeranno mai a browser come Firefox, Opera o Safari, dobbiamo eliminare una delle possibili scuse per non installarlo.

Resta comunque il problema IE6, che continuerà ad esistere in molti pc: tutti quelli dei dipendenti che lo usano perchè IE7 non funziona sulle loro intranet. In questo caso c’è ben poco da fare, se non rendersi conto che nel 2008 è assurdo (soprattutto per un’azienda) avere una pagina funzionante solo su Explorer 6, browser datato 2001.

Save The Developers: IE6 sparirà?

E’ nata un’iniziativa che ha l’obiettivo di eliminare Internet Explorer 6. Obbligare gli utenti è l’unica soluzione?

Parlando di browser, il nemico giurato di tutti gli sviluppatori è l’ormai noto Internet Explorer 6. Sembra veramente difficile eliminarlo dai computer di tutto il mondo, soprattutto dopo che la Microsoft ha fatto diventare opzionale l’aggiornamento di IE7.

Da qualche mese è nata un’iniziativa chiamata Save The Developers, che si propone di far sparire IE6 senza troppi mezzi termini. Qualche riga di Javascript, ed il sito che si vuole visitare mostrerà una pagina che suggerisce di scaricare un browser alternativo come IE7, Firefox, Safari o Opera.

Niente velati consigli, ma un vero e proprio muro contro gli utilizzatori del vecchio browser Microsoft. Quasi una moderna vendetta, sulla falsariga dei siti anni ’90 che riportavano la frase “ottimizzato per Internet Explorer 6”.

Sono molti i sostenitori dell’iniziativa, anche se il numero di siti che partecipano attivamente installando lo script non è noto.

Nonostante le buone intenzioni però, non sono d’accordo sul metodo. Conosco bene i problemi relativi allo sviluppo su IE6, e sarei ben contento anche io di vederlo sparire, ma limitare l’esperienza degli utenti a seconda del browser utilizzato non credo sia la scelta corretta. Internet dovrebbe essere accessibile a chiunque, ed uno dei compiti degli sviluppatori è raggiungere questo obiettivo, non ostacolarlo.

Tralasciando i discorsi relativi al calo delle visite e alla perdita degli utenti sopracitati, penso che il problema possa essere risolto solo ad un livello superiore, da parte delle grandi aziende. La Microsoft però ha già dimostrato di non voler forzare il passaggio, e sicuramente il flop di Windows Vista non aiuta (Vista ha obbligatoriamente IE7). Resta da vedere come sarà distribuito Explorer 8, ma per questo ci vorrà ancora del tempo.

Pensate che la strada intrapresa da Save The Developers sia corretta? Io per il momento resto dubbioso, ma qualcosa potrebbe comunque muoversi. Non è un caso che un servizio come il nuovo MobileMe targato Apple non supporti IE6. Il futuro potrebbe essere più roseo per tutti, sviluppatori compresi.

Firefox 3, Opera, Safari e la guerra ad IE

Alla scoperta delle nuove versioni di Firefox, Opera e Safari, che cercano di togliere quote di mercato ad IE. Cosa succederà?

Firefox 3 ha visto la luce, e con il Download Day punta ad abbattere ogni record. L’occasione è buona per fare una panoramica sui principali browser web esistenti e del prossimo futuro, ed alcune riflessioni su cosa può attenderci.

Firefox 3

Senza dubbio uno dei principali punti a favore di Firefox 3 è la maggiore velocità di esecuzione del codice JavaScript. A questo sono da aggiungere numerosi dettagli che migliorano l’esperienza di tutti i giorni: la gestione delle password, dei componenti aggiuntivi, dei download che potranno essere messi in pausa e ripresi anche dopo un riavvio.

Per gli sviluppatori inoltre c’è un’intera sezione sul Mozilla Developer Center che illustra le novità di Firefox 3, dal supporto migliorato dei CSS a quello per le PNG animate.

Download Firefox 3

Opera 9.5

Opera è il browser che ha giocato d’anticipo sulla concorrenza, uscendo con l’ottima versione 9.5 prima di tutti gli altri. Le novità più apprezzate riguardano gli sviluppatori, visto il maggiore supporto per i CSS3 e l’integrazione di Dragonfly, l’analogo di Firebug. Per attivarlo vi basta andare sul menu Strumenti -> Avanzate -> Strumenti per gli sviluppatori.

Da notare come anche Opera abbia cambiato l’interfaccia grafica con uno stile più accattivante, anche se la semplicità delle versioni precedenti mi era sempre piaciuta.

Download Opera 9.5

Safari 4

Avrà il motore JavaScript più veloce in circolazione, incrementando le prestazioni rispetto all’ultima versione di Firefox del 50%.

Per l’uscità ci sarà ancora da aspettare, visto che sarà rilasciato con la nuova versione di Mac Os: Snow Leopard. In ogni caso la Apple ha da poco fatto uscire la versione 3.1, veloce ed elegante.

Download Safari 3.1

Internet Explorer 8

La Microsoft dopo il grande passo fatto da Explorer 6 ad IE7 sembra aver confidato troppo sulla propria posizione predominante. Nella pagina dedicata ad IE8 sono presentate diverse novità, tra cui il supporto completo ai CSS 2.1 e la discussa modalità Super Standard, ma non c’è ancora una data ufficiale.

Considerando che ad Agosto è previsto il rilascio di una nuova beta, è probabile che la data di uscita di Internet Explorer 8 sarà resa nota al ritorno dalle vacanze estive, e comunque il browser uscirà entro la fine del 2008.

Conclusioni

Una cosa è certa: non si è mai parlato così tanto di browser web come si sta facendo in questo periodo, ed il bello è che non ci sono solo due contendenti come ai tempi di Explorer e Netscape.

I prossimi mesi saranno una prova decisiva per le ambizioni di Firefox 3, che da tempo prova a rubare quote di mercato ad IE.

Quale può essere l’unico problema? Che i browser alternativi, come Opera e Safari, finiscano per togliere percentuali proprio a Firefox, in una guerra fratricida.

La speranza è che questo non accada, ma per raggiungere l’obiettivo di un web sempre più vicino agli standard il primo ostacolo è un altro: il definitivo abbandono di Internet Explorer 6.

La velocità di Firefox 3

Risultati interessanti per la nuova versione del browser di casa Mozilla: Firefox 3 sarà molto più veloce.

FirefoxE’ stata appena rilasciata la quarta beta di Firefox 3, e sembra proprio che ci dovremo aspettare un netto miglioramento nelle prestazioni del browser di casa Mozilla.

Sul sito mozillalinks.org infatti sono stati resi pubblici i risultati di alcuni test decisamente sorprendenti.

Il primo miglioramento riguarda il consumo di memoria: se fino ad ora utilizzare Firefox significava arrivare facilmente a 200Mb di RAM occupata, con Firefox 3 le cose sembrano cambiare. Le dichiarazioni ufficiali parlano di correzioni a numerosi memory leaks, il che spiega i problemi di Firefox 2 soprattutto dopo lunghe sessioni di lavoro.

La cosa più sorprendente però è la velocità nell’interpretare codice Javascript. Per il test è stato utilizzato Sunspider, che potete usare anche voi per rendervi conto delle differenze tra i vari browser. Con tutti i dubbi del caso, Firefox 3 è risultato 2 volte più veloce di Opera e Safari, 3 volte più veloce di Firefox 2, e addirittura 5-6 volte più veloce di Internet Explorer 7.

Considerando il sempre più diffuso utilizzo di Javascript nelle pagine web, resta solo da sperare che la versione finale mantenga questi risultati.

La data di uscita di Firefox 3 ancora non è nota, ma entro un mese vedrà la luce la versione Release Candidate, ultimo passo prima del rilascio finale.

Se siete interessati ad approfondire, vi consiglio di leggere anche Punto Informatico. Se invece utilizzate Internet Explorer, forse è arrivato il momento di guardarsi intorno e provare qualcosa di diverso.

IE8, Microsoft e gli Standard Web

Analisi delle ragioni che potrebbero aver portato Microsoft alla fatidica decisione: Internet Explorer 8 supporterà i Web Standards.

Internet Explorer 8 rispetterà di default gli standard web. Questa è la notizia che da un paio di giorni sta facendo il giro del mondo, ripresa su blog e testate più o meno importanti. Del resto che IE fino ad ora sia sempre stato ben lontano dagli standard è cosa nota, era prevedibile che un’inversione di tendenza provocasse tanto scalpore.

La cosa più strana è come la Microsoft sia arrivata a questa decisione. Fino a poco fa la sua posizione era completamente opposta, e prevedeva che il Super-Standard Mode dovesse essere abilitato tramite un meta tag apposito. Questa scelta era stata approvata nientemeno che da Jeffrey Zeldman su A List Apart, sollevando numerose polemiche.

Come si può essere arrivati a questo cambiamento, tanto positivo per gli sviluppatori che fanno del rispetto degli standard la loro religione?

La risposta più plausibile è quella ipotizzata da Andy Budd, in un post precedente al cambio di posizione della Microsoft:

Microsoft have set up the ideal conditions to marginalise their own browser. Clueless developers won’t know about this behaviour so every new site they build will automatically be rendered as IE7. Clued-up developers will use this as an excuse to freeze support for IE and turn their attentions to better browsers.

[..]

No matter what great leaps forward the Internet Explorer team make from now on, the majority of developers won’t use them and the majority of users won’t see them.

In pratica se la Microsoft fosse rimasta lontana dagli standard, gli sviluppatori avrebbero potuto smettere di preoccuparsi di IE8 e successivi, limitandosi a controllare la visualizzazione su IE7.

Un probabile suicidio, perchè tutte le future release si sarebbero comportate di default sempre allo stesso modo. L’esperienza di navigazione migliore sarebbe rimasta un’esclusiva dei browser concorrenti.

In ogni caso, questa novità deve essere accolta positivamente: uno sviluppatore del calibro di Roger Johansson ha parlato di sorpresa dell’anno, ed io non posso che concordare.