Apprendo da un interessante articolo di Jeremy Keith che simpaticamente “delira” su quando sia il caso di ottimizzare anche per explorer 6 e quando no, tramite un’equazione matematica, che un certo Dean Edwards ha creato uno script chiamato IE7.
Non ne conoscevo l’esistenza, ma a quanto pare questo “magico” script rende explorer6 e inferiori dei browser molto simili a quelli che supportano gli standard, come explorer7, firefox, opera etc.
E’ sufficiente inserirlo nel nostro sito richiamandolo con l’if condizionale per i browser explorer:
E dovrebbe (dico dovrebbe perchè non ho ancora avuto modo di testarlo):
- supportare i seguenti selettori CSS:
- genitore > figlio
- adiacenti + fratelli
- adiacenti~ fratelli
- [attr], [attr=”value”], [attr~=”value”] etc
- .multiple.classes (fixa i bug)
- :hover, :active, :focus (per tutti gli elementi)
- :first-child, :last-child, only-child, nth-child, nth-last-child
- :checked, :disabled, :enabled
- :empty, :contains(), :not()
- :before/:after/content:
- :lang()
- supporta i fogli di stile importati
- mantiene la cascata dei fogli di stile
- non altera la struttura dei documenti
- non richiama ripetutamente l’albero DOM usando JavaScript
- usa CSS puro per raffornzare le regole di stile
- supporta il W3C box model sia nello standards che nel quirks mode
- supporta il fixed positioning (senza sfarfallio)
- supporta overflow:visible
- supporta min/max-width/height
- fixa gli elementi di interruzione (X)HTML (abbr, object)
- standardizza il comportamento dei forms
- supporta la PNG alpha transparency
- script leggero (11KB)
- funziona per Microsoft Internet Explorer 5+ (Windows)
Io suggerirei di testarlo prima possibile, forse ci alleggerirà un po’ di lavoro, perchè, checchè ne dica Keith, purtroppo explorer 6 è ancora molto diffuso e da supportare. Lui suggerisce di valutare, a ritroso, dalla più estrema al suo opposto, l’opportunità di:
- bloccare gli utenti explorer 6 dall’accesso al proprio sito ( 😮 direi davvero estrema, magari aggiungerei io, suggerire tramite un avviso, di aggiornarsi almeno a ie7 per una migliore visualizzazione)
- sviluppare con gli standard web e ignorare i test su ie6 (come sopra)
- usare lo script di Dean Edwards come suggerito (e aggiungo io, fare piccoli test perchè qualcosa sfuggirà)
- scrivere un file css per fixare explorer 6 (che stress)
- rendere il tutto graficamente esatto fra explorer 6 e gli altri browser (doppio stress!)
Magari facciamo anche presente ai nostri clienti che il risultato non sarà mai uguale su tutti i browser, perchè come suggerisce Scano, sarebbe come voler far vestire a differenti donne lo stesso abito taglia 42… 😉