Réponses:
Non, ils ne sont pas du tout les mêmes; ils font des choses complètement différentes.
html5shiv vous permet d'utiliser les nouvelles balises HTML5 dans les versions d'IE qui ne les comprennent pas. Sans cela, IE s'étouffera avec ces balises, vous en aurez donc besoin si vous avez l'intention d'utiliser les balises. Ne vous attendez pas à ce que les balises fassent quoi que ce soit dans IE! Cela empêche simplement le navigateur de se plaindre d'eux.
modernizr définit un ensemble de classes dans votre HTML, en fonction des fonctionnalités disponibles, que vous pouvez utiliser pour modifier votre mise en page en fonction de ce que le navigateur prend en charge. Il vous permet également d'utiliser les nouvelles balises HTML5 dans IE , comme html5shiv.
ie7.js (ainsi que ie8.js
et ie9.js
) utilise Javascript pour adapter certaines fonctionnalités manquantes à IE.
Pour autant que je sache, il n'y a pas de croisement entre eux (à part html5shiv / modernizr), vous pouvez donc utiliser n'importe quelle combinaison d'entre eux, en fonction des fonctionnalités que vous devez implémenter.
Pendant que je suis sur le sujet et que vous demandez des outils pour rendre IE plus compatible avec d'autres navigateurs, je vous suggère également de vous pencher sur CSS3Pie , qui vous rendra la vie beaucoup plus heureuse si vous prévoyez d'utiliser des coins arrondis sur votre site. (plus une ou deux autres fonctionnalités).
Cela n'a pas non plus de croisement avec les trois autres produits que vous avez mentionnés, bien qu'ils visent tous à rendre les anciennes versions d'IE un peu plus faciles à utiliser.
placeholder
dans votre balise d'entrée. Mais l'ancien IE ne le prend pas en charge. Modernizr ajoutera une classe no-placeholder
dans IE; vous pouvez écrire du code Javascript qui fait référence à cette classe afin de pouvoir implémenter un script pour imiter la fonction d'espace réservé sans l'exécuter sur des navigateurs qui n'en ont pas besoin. J'espère que cela explique
IE9.js
fait tout ce que fait html5shiv.
Le moyen le plus simple de démarrer un nouveau projet HTML5 consiste à utiliser initializr . Il vous guidera et vous permettra de construire, télécharger vos fichiers de projet HTML5.
ils sont un peu les mêmes, et le chemin à parcourir est ATM aussi bien qu'une estimation, et pour mémoire, il y en a un que vous avez manqué, http://html5boilerplate.com/ C'est une sorte de répétition d'il y a quelques années lorsque le prototype et jQuery se battaient dans le même espace. Je risquerais personnellement que jQuery ait gagné, mais pour l'instant, il est impossible de dire lequel d'entre eux gagnera ce combat particulier. Je ne pense pas que je pourrais recommander dean edwards ie7-js car il s'agit principalement de faire en sorte qu'IE7 agisse comme d'autres navigateurs plus intelligents et sympathiques plutôt que de tirer parti de l'ensemble du HTML5 autant que des autres frameworks.