Respostas:
Não, eles não são iguais; eles fazem coisas completamente diferentes.
html5shiv permite que você use as novas tags HTML5 em versões do IE que não as entendem. Sem ele, o IE vai engasgar com essas tags, então você precisa disso se pretende usar as tags. Não espere que isso faça com que as tags realmente façam alguma coisa no IE! Isso apenas impede o navegador de reclamar deles.
modernizr define um monte de classes em seu HTML, dependendo dos recursos disponíveis, que você pode usar para alterar seu layout de acordo com o que o navegador suporta. Ele também permite que você use as novas tags HTML5 no IE , como html5shiv.
ie7.js (bem como ie8.js
e ie9.js
) usa Javascript para adaptar algumas funcionalidades que faltam ao IE.
Pelo que eu sei, não há cruzamento entre eles (além de html5shiv / modernizr), então você pode usar qualquer combinação deles, dependendo de quais recursos você precisa implementar.
Já que estou falando sobre o assunto, e já que você está perguntando sobre ferramentas para tornar o IE mais compatível com outros navegadores, sugiro que você também dê uma olhada no CSS3Pie , que tornará sua vida muito mais feliz se você planeja usar cantos arredondados em seu site (mais um ou dois outros recursos).
Isso também não se cruza com os outros três produtos que você mencionou, embora todos tenham como objetivo tornar as versões antigas do IE um pouco mais fáceis de trabalhar.
placeholder
em sua tag de entrada. Mas o antigo IE não o suporta. Modernizr adicionará uma classe no-placeholder
no IE; você pode escrever o código Javascript que faz referência a essa classe para que possa implementar um script para imitar o recurso de espaço reservado sem que seja executado em navegadores que não precisam dele. Espero que isso explique
IE9.js
faz tudo o que o html5shiv também faz.
A maneira mais fácil de iniciar um novo projeto HTML5 é usando o initializr . Ele irá guiar e permitir que você construa, baixe seus arquivos de projeto HTML5.
eles são mais ou menos iguais, e para que lado ir é ATM é um bom palpite de qualquer maneira, e para que conste, há um que você perdeu, http://html5boilerplate.com/ Isso é uma espécie de repetição de alguns anos atrás, quando o protótipo e jQuery estavam lutando no mesmo espaço. Eu pessoalmente arriscaria que jQuery vencesse, mas por enquanto não há como dizer qual deles vai ganhar essa luta em particular. Eu não acho que eu poderia recomendar reitor edwards ie7-js, pois ele trata principalmente de fazer o IE7 agir como outros navegadores mais inteligentes e agradáveis ao invés de alavancar toda a coisa do HTML5 tanto quanto os outros frameworks.