Conditional-CSS – Adottiamo gli stili ai diversi browser

Articolo scritto sabato 2 maggio 2009

Per chi, come me, fa a botte con i vari browser per adattare gli stili CSS per ciascuno di essi, non può fare null’altro che usare vie traverse, come sfruttare i bug di ciascun browser per fargli leggere delle regole CSS adattate per questi ultimi, oppure l’applicazione di javascript che rileva il browser utilizzato dall’utente che specifica i fogli CSS da utilizzare, eccetera.

Spesso questi metodi sono anche un po’ troppo scomodi per la non-pulizia del codice, che lo fa irrimediabilmente invalidare.

La soluzione al problema è Conditional-CSS, uno script in un file PHP che ci permette di leggere il CSS in modo condizionale per ogni browser. Con questo metodo si risparmia molto tempo e la manutenzione è più immediata. Un esempio delle possibilità di questo script è questo:

.box {
   width: 400px;
   [if IE 6] width: 600px;
   [if Opera] width: 500px;
}

Indovinate un po’? Esatto, normalmente il div con classe “box” è grande 400px, ma grazie a Conditional-CSS, con le regole del CSS condizionale se vediamo la pagina da IE 6, il box appare di 600px mentre in Opera lo vedremo di 500px!

Il tutto mantenendo il codice pulito e perfettamente conforme agli standard W3C. Questo perchè lo script PHP rileva dinamicamente il browser utlizzato e la sua versione, così applica il valore da mostrare come default, senza – ovviamente – i parametri impostati (cioè i vari [if IE 6], eccetera).

I browser supportati attualmente sono questi:

  • IE - Internet Explorer
  • Gecko - Gecko based browsers (Firefox, Camino, ecc)
  • Webkit - Webkit based browsers (Safari, Chrome, ecc)
  • SafMob – Mobile Safari (iPhone / iPod Touch)
  • Opera - Opera’s browser
  • IEMac - Internet Explorer per il Mac
  • Konq - Konqueror
  • IEmob - IE mobile
  • PSP - Playstation Portable
  • NetF - Net Front

Implementare lo script di Conditional-CSS è alquanto semplice. Prima di tutto si va in questo sito e si immettono i valori necessari nel form a destra. Tutto quello che avete bisogno di specificare è solamente il nome del foglio di stile (normalmente dovrete mettere style.css ma varia a seconda dei casi) e, se siete vanitosi, anche il vostro nome e il copyright da usare (ma non è vitale per il funzionamento dello script).

Dopo di chè, premendo su “Go!“, la pagina vi darà da scaricare un file “c-css.php“. Questo va messo esattamente nello stesso percorso dell’attuale style.css.

Infine, andate a modificare la pagina dove avete specificato il vostro foglio di stile css (solitamente header.php nel caso di un tema WordPress) e modificatene il riferimento, in modo che debba puntare al file “c-css.php”:

<!--
@import url('c-css.php');
-->

Ora, se avete finito potete iniziare ad adattare il vostro foglio di stile CSS in modo condizionale ai vari browser, il tutto con una flessibilità davvero disarmante. ;)

La legenda dei parametri impostabili la trovate nel sito conditional-css.com.




Condividi articolo su:
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • E-mail this story to a friend!
  • Live
  • MySpace
  • Netvibes
  • Pownce
  • StumbleUpon
  • Technorati
  • Tumblr
  • Wikio IT
  • Segnalo
  • Upnews
  • TwitThis

12 commenti in “Conditional-CSS – Adottiamo gli stili ai diversi browser”

Lascia un commento


Non sai cosa sono i feeds? Oppure preferisci avere gli articoli via mail?



Ricevi gratis gli articoli sulla tua casella di posta elettronica:



CubaLibre and Spritz AperolA little ride on the riverViottoloPeroniTaking that expressRainy day in AprilTrain leaving RomeStanding behind the windowScattered sheetsDon't you know that smoking kills?
Vai all'album di Piplos su Flickr!


Per informazioni sulla licenza utilizzata in questo blog leggere le Note Legali.


Questo blog ha 4 anni e 2 giorni.


Grafica realizzata interamente da Piplos.

Feed RSSRimani aggiornato via feedFlickrGuarda le mie foto su FlickrInfoInformazioni sul blog