Qual è la differenza tra Modernizr e Html5Shiv?


12

Stavo giocando con l'idea di passare a HTML5. Sembra che ci siano 2 script principali per gestire il supporto di html5 su browser meno recenti.

Modernizr e Html5Shiv

Mi chiedevo se fanno la stessa cosa. Quale scegliere e perché?

Qualche idea?

Risposte:


8

Modernizr viene utilizzato per verificare la disponibilità delle funzionalità HTML5 in diversi motori di rendering. Include uno script come Html5Shiv, che (solo) abilita i tag HTML5 su Microsoft Internet Explorer (prima della versione 9, che conosceva HTML5). Vedi anche "Come far funzionare HTML5 in IE e Firefox 2" .

Se si desidera solo abilitare HTML5 per IE <9, Html5Shiv sarebbe sufficiente. Sto usando la versione Html5Shiv di Remy Sharp in un commento condizionale di MS:

<!--[if lte IE 8]>
    <script src="templates/js/html5.js"></script>
<![endif]-->

Se si desidera anche verificare (tramite CSS o JS), se il browser del client è in grado, ad esempio , di elementi di forma HTML5 (come l'immissione della data delle opere), colonne o gradienti CSS3, quindi utilizzare Modernizr .


2

Potresti anche voler dare un'occhiata a html5boilerplate.com , una buona risorsa per iniziare con i siti html5, che offrono opzioni intercambiabili come html5 shiv o modernizr insieme a molti altri miglioramenti di base.


si html5boilerplate è buono. Ha una scelta per modernizr o html5shiv. Ma quale includere?
Sinan,

abbastanza giusto, immagino che html5 è ciò che ha sollevato la domanda?
Kzqai,

1

So che questo è di un po 'di tempo fa, ma ho pensato che dovrei aggiungere che modernizr non sembra riempire di elementi polyfill HTML5 che sono caricati tramite AJAX - funziona solo sul contenuto presente al caricamento della pagina iniziale. Html5Shiv FUNZIONA su contenuti caricati tramite AJAX, ma è anche solo un piccolo sottoinsieme del set di funzionalità di modernizr. Stiamo effettivamente utilizzando entrambi sull'app Web a cui sto lavorando.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.