Qual é a diferença entre Modernizr e Html5Shiv?

12

Eu estava brincando com a idéia de mudar para html5. Parece que existem dois scripts principais para lidar com o suporte a html5 em navegadores mais antigos.

Modernizr e Html5Shiv

Eu queria saber se eles fazem a mesma coisa. Qual escolher e por quê?

Alguma ideia?

Sinan
fonte

Respostas:

8

Modernizr é usado para verificar a disponibilidade dos recursos HTML5 em diferentes mecanismos de renderização. Ele inclui um script como Html5Shiv, que (apenas) habilita as tags HTML5 no Microsoft Internet Explorer (anterior à versão 9, que conhecia o HTML5). Veja também "Como fazer o HTML5 funcionar no IE e Firefox 2" .

Se você deseja ativar apenas o HTML5 para o IE <9, o Html5Shiv seria suficiente. Estou usando a versão Html5Shiv de Remy Sharp dentro de um comentário condicional da MS:

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

Se você também deseja verificar (via CSS ou JS), se o navegador do cliente é capaz, por exemplo , de elementos de formulário HTML5 (como entrada de data das óperas), colunas ou gradientes CSS3, use Modernizr .

feeela
fonte
2

Você também pode conferir o html5boilerplate.com , um bom recurso para começar com sites html5, eles oferecem opções alternáveis ​​como html5 shiv ou modernizr, além de muitas outras melhorias na linha de base.

Kzqai
fonte
sim html5boilerplate é bom. Tem uma opção para modernizr ou html5shiv. Mas qual incluir?
Sinan
justo o suficiente, acho que html5 é o que levou a pergunta?
Kzqai #
1

Sei que isso já faz um tempo, mas achei que deveria acrescentar que o modernizr não parece polifill elementos HTML5 carregados via AJAX - ele funciona apenas no conteúdo presente no carregamento inicial da página. O Html5Shiv funciona no conteúdo carregado via AJAX, mas também é apenas um pequeno subconjunto do conjunto de recursos do modernizr. Na verdade, estamos usando os dois no aplicativo da web em que estou trabalhando.

Isócrono
fonte