Anche a Rimini si prova a fare web design

Ecco allora un paio di hack

Trattasi di un paio di hack per i CSS di Internet Explorer 6 e 7 (IE6 e IE7) molto semplici, ma che, non so perchĂ©, anche gli stessi programmatori che frequento evitano di utilizzare. E dire che, a mio parere, non c’è nulla di piĂą comodo.

Questi ultimi preferiscono infilare nell’HTML (o PHP) il classico

<!–[if IE]>
<link rel=”stylesheet” href=”css-ie.css” type=”text/css”>
<![endif]–>

con le varianti

<!–[if lt IE 6]>

oppure

<!–[if lte IE 6]>

e via dicendo… tutte soluzioni che creano una confusione immane a chi poi deve andare a ritoccare i fogli di stile (in questo caso a me) perchĂ© due volte su tre non si accorge che c’è una marea di fogli di stile differenti.

Non sarebbe molto meglio trovare un modo per infilare direttamente tutte le varianti per i diversi browser in un unico foglio di stile?

Detto fatto: partiamo dal presupposto che il nostro CSS sia impostato per Firefox (e affini). Se vogliamo che in questo browser un div (che chiameremo “pinko”) abbia i margini tutti di 5 px non dovremo fare altro che scrivere:

#pinko {
margin: 5px;
}

Se poi però ci rendiamo conto che in Internet Explorer 6 il margine inferiore viene schiacciato (non chiedetemi perché) è dobbiamo aumentarlo di due pixel solo per questo browser, andremo a scrivere:

*html #pinko {
margin: 5px 5px 7px 5px;
}

Se poi ancora ci rendessimo conto che in IE7 anche il magine destro avesse bisogno di uno scriccotto di 2 pixel, dovremmo semplicemente aggiungere:

*body #pinko {
margin: 5px 7px 5px 5px;
}

A questo punto, invece di tre fogli di stile diversi per una stessa pagina HTML, avremmo semplicemente un CSS dove ad un certo punto troveremmo scritto:

#pinko {
margin: 5px;
}
*html #pinko {
margin: 5px 5px 7px 5px;
}
*body #pinko {
margin: 5px 7px 5px 5px;
}

Provare per credere.

Ovviamente hack di questo tipo esistono anche per Safari e per Opera… una cosa alla volta però.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Design Float
  • Segnalo
  • description

Tag: , , , ,

Lascia un Commento

Login