Perché usare Modernizr se browser ignorano CSS non capiscono?
Domanda
Ho lavorato con Modernizr ed è una risorsa meravigliosa, solo un grande progetto. Tuttavia, il modo in cui ho usato è:
- design al basale (IE) CSS
- Migliorare con effetti CSS3 per i browser avanzati
A meno che non stavo andando a sostituire completamente gli stili in base al comportamento, perché non dovrei solo aggiungere stili, come ombre box, le pendenze e raggi confine con il foglio di stile? Se il browser non capisce una regola, sarà solo ignorarlo, giusto? E se JavaScript è spento, non posso usare lo stesso.
Dovrei usare il metodo di cui sopra nel caso tipico, e Modernizr per casi avanzati? O c'è qualcosa di sbagliato con affidamento su browser di ignorare ciò che non capiscono?
Soluzione
È possibile utilizzare (HTML 5) elementi che alcuni browser non supportano ancora. Inoltre è possibile specificare lo stile fallback.
Un sacco di browser creare le proprie regole CSS per le cose come text-transform. Con Modernizr è possibile scrivere una regola e Modernizr rende accadere per diversi browser.
Credo che sia solo la convenienza.
Altri suggerimenti
Hai totalmente ragione che i vecchi browser completamente ignorare gran parte di ciò che è in CSS3.
A causa di questo, faccio del mio CSS3 nei miei selettori di base .. ma fanno spesso uso di non-funzionalità classi del Modernizr per gestire il caso del browser più vecchi:
div.box {
height:50px;
-moz-box-shadow: 3px 3px 5px #555;
-webkit-box-shadow: 3px 3px 5px #555; }
div.box span.fakeshadow {
display:none;
}
.no-boxshadow div.box span.fakeshadow {
display:block; background: url('fakeshadowbg.png');
}
Mi auguro che lo rende più chiaro.