Tra tutti gli splendidi siti e tool che ci ha messo a disposizione Paul Irish (HTML5Boilerplate, yayquery, eccetera), uno dei più famosi è sicuramente Modernizr. Per chi ancora non la conoscesse, si tratta di una libreria che permette di fare in maniera semplice e potente quella spinosissima attività che va sotto il nome di "feature detection". Tale tecnica ha da tempo soppiantato (o meglio: dovrebbe aver soppiantato...) l'altra conosciuta come "browser detection/sniffing" ovvero quel sistema tale per cui, nel caso mi trovassi di fronte al browser A faccio una cosa in una certa maniera, mentre se mi trovo di fronte al browser B allora la faccio in un'altra maniera.
Il problema nel secondo caso è che la tecnica non è "future proof", in casi particolari potrei dover fare un lungo test inclusivo (per TUTTI i browser che...) o esclusivo (eccetto CERTI browser che...) rischiando di dimenticarne alcuni e ovviamente non prevedere quelli che usciranno nel futuro: vi è mai capitato di navigare su un sito con Firefox 4 e vedervi dire "Spiacente, il sito richiede Firefox 3 o superiori"? La tecnica corretta dunque è quella che indaga sulla presenza della singola "feature" che ci interessa utilizzare (e prendere decisioni di conseguenza). jQuery ci dà già una mano in questo senso con il metodo support, ma questo è niente a confronto di tutto cià che può verificare Modernizr.
L'ultima versione, uscita il primo giugno, aggiunge il supporto alle media query, l'integrazione con yepnope, il supporto ai vendor prefix nei CSS e altro ancora. E dato che c'erano hanno anche rifatto completamente il sito.