BigThink

PNG trasparenti su IE6

Ormai si sa, il browser che peggio supporta gli standard è sempre lui, Internet Explorer. Ancora ancora la versione 7, ma la 6 è davvero scandalosa.

Oltre ai vari problemi legati alla visualizzazione dei CSS e via dicendo, è noto il bug delle PNG trasparenti. IE6 si rifiuta semplicemente di mostrarci la trasparenza, sostituendola con uno sfondo grigio. Bello…

Stiamo parlando delle PNG-24 che, a differenza delle solite GIF, supportano colori a 24 bit e ci permettono di utilizzare ben 256 livelli di trasparenza. Un’altra cosa rispetto alle pessime GIF! Vediamo allora come risolvere il problema su IE6, perchè (purroppo) non possiamo obbligare tutti a passare a FireFox.

Esistono diversi hack CSS e javascript adatti allo scopo. Molti usano la proprietà filter, applicando manualmente il filtro AlphaImageLoader di proprietà Microsoft, ma ciò comporta un minimo di personalizzazione e sporca un po’ il codice della nostra pagina.

Quello che vi propongo è IE PNG Fix che, con una sola riga di codice, correggerà il malefico bug: le nostre immagini e sfondi PNG si vedranno senza alcun problema. Intanto scaricate lo zip che contiene i file necessari: una GIF trasparente 1x1px e il file iepngfix.htc che contiene il codice javascript. Uploadateli ad esempio nella cartella contenente i vostri file css.

Ora è sufficiente aggiungere alla pagina questo codice:

1
2
3
<style type="text/css">
      img, div { behavior: url(css/iepngfix.htc) }
</style>

Se siete puristi della validazione, potrebbe non piacervi usare la proprietà behavior (non considerata valida W3C). L’alternativa è aggiungerla tramite javascript:

4
5
6
7
8
9
10
<script type="text/javascript">
    if (document.all && document.styleSheets && document.styleSheets[0] &&
document.styleSheets[0].addRule){
      document.styleSheets[0].addRule('img', 'behavior: url(iepngfix.htc)');
      document.styleSheets[0].addRule('div', 'behavior: url(iepngfix.htc)');
   }
</script>

Si può applicare il behavior ai tag img e div, ma anche solo a classi specifiche. Come preferite.

E un’altro bug di IE6 è fixato! Buon lavoro!

Articolo scritto da Ghido

Fondatore di BigThink.it, si occupa dello sviluppo e del coordinamento dei progetti tecnologici. Specializzato nel Marketing su Facebook e nello sviluppo di Applicazioni Social, fa consulenza e formazione ad aziende ed agenzie.

Leggi anche...

Accelerare il caricamento del tuo sito con una riga di codice

Accelerare il caricamento del tuo sito con una riga di codice

Fate di tutto per ottimizzare i vostri siti (o blog) per renderli più leggeri possibile, ma, nonostante gli sforzi, il caricamento è ancora lento? Cercate sempre di evitare grafiche pesanti e immagini troppo grandi, ma il vostro server è una lumaca? Se avete un sito in php che gira su Apache, eccovi due modi ...
Aumentare "drasticamente" la Visibilità di un sito con i Social!

Aumentare “drasticamente” la Visibilità di un sito con i Social!

Oggi in anteprima su BigThink voglio regalarti qualcosa di speciale, che non ho neanche inserito nelle mie risorse ancora. Al termine di tale articolo aggiornerò sul mio portale il corso online gratuito “Come aumentare la Popolarità web con Pagerank e Link Popularity”, da cui mi sono ispirato per illustrarvi ciò che ora ...
Installare diverse versioni di Internet Explorer

Installare diverse versioni di Internet Explorer

Il problema con cui qualunque webmaster prima o poi dovrà scontrarsi è la cosiddetta compatibilità crossbrowser, ovvero fare in modo che il nostro nuovo sito che abbiamo appena creato — della cui grafica andiamo particolarmente orgogliosi, perfettamente validato W3C e con layout table-less — si veda allo stesso modo su tutti i browser. Non ...
Creare una newsletter con i feed del proprio blog

Creare una newsletter con i feed del proprio blog

Un ottimo strumento per la promozione del proprio blog è la creazione di una newsletter, in modo che gli utenti più affezionati possano ricevere gli aggiornamenti direttamente sulla loro casella di posta. In questo articolo vedremo come creare una newsletter che, basandosi sui feed del nostro blog, invii automaticamente agli iscritti una mail, ogni ...
Sondaggio: Posizionamento Web su backlink e outbound links

Sondaggio: Posizionamento Web su backlink e outbound links

Tempo fa si riunirono 37 americani esperti di posizionamento web e si creò un sondaggio, in risposta alla domanda "Quali sono i fattori che caratterizzano il successo di un sito nei posizionamenti su Google?". Per ogni fattore viene dato un valore compreso tra 0 e 5. I risultati del sondaggio sono stati raccolti da ...

3 Commenti

  1. Ghido

    Ottimo, grazie mille!

    4 settembre 2008, 00:06
  2. Dario

    Qua ce ne sono indicate un altro po’…
    http://tinyurl.com/5wme8d
    ciao!

    3 settembre 2008, 23:42

1 Citazioni