Um dos principais motivos pelos quais os desenvolvedores podem não estar migrando para o HTML5 ainda é a percepção da falta de suporte para navegadores legados. Na verdade, isso não é verdade e, embora possa ser necessário algum truque para compatibilidade com versões anteriores, ainda é possível.
Claro, por navegadores legados quero dizer Internet Explorer, já que todos os outros grandes players atualizam regularmente e seus usuários tendem a seguir o exemplo: navegadores como Firefox, Safari e Opera suportam HTML5 há algum tempo. Alguns desenvolvedores podem decidir parar de oferecer suporte ao IE6, mas para alguns isso não é uma opção e, de qualquer forma, nem o IE7 nem o IE8 oferecem suporte a HTML5. IE9 irá, mas ele roda no Windows Vista e no Windows 7 apenas, então as outras versões ainda existirão por muito tempo, como vimos com o IE6.
Então, o que precisa ser feito para que o HTML5 funcione no Internet Explorer?
como tornar sua lista de amigos privada no facebook
Elementos desconhecidos
Bem, em primeiro lugar, o IE não renderizará nenhum elemento que não reconhecer, portanto, ignorará completamente os elementos estruturais do HTML5, como header
, footer
, article
, section
e nav
, todas as partes principais de um site HTML5. Isso pode ser corrigido informando ao IE sobre esses elementos usando JavaScript. A melhor maneira de fazer isso é incluir o HTML5 shiv script, criado por Remy Sharp. Este prático script cria todos os elementos HTML5 relevantes que o IE agora saberá ao renderizar a página.
Um problema com isso é que não funciona para usuários que têm o JavaScript desativado. Infelizmente, não há como contornar isso, então o desenvolvedor deve tomar a decisão de usar HTML5 ou permanecer com HTML 4.01.
Estilo
A maioria dos navegadores possui folhas de estilo internas que, entre outras coisas, se aplicam a display:block
para bloquear elementos de nível. Embora alguns dos navegadores mais recentes agora façam isso para os elementos HTML5 relevantes, outros não, e isso precisa ser adicionado para todos os navegadores. Basta adicionar o seguinte estilo para resolver o problema:
article, aside, figure, footer, header, hgroup,
menu, nav, section { display:block; }
Elementos de formulário
E o que dizer de alguns dos próprios novos elementos, como o novos tipos de entrada - como eles são processados em navegadores legados?
Bem, na verdade. Uma vez que a especificação HTML5 foi estendida em um maneira compatível com versões anteriores , quaisquer tipos de entrada que não sejam reconhecidos, são simplesmente tratados como text
e será simplesmente processado como tal.
discordar como limpar um canal de texto
Multimídia
Como já discuti no passado, o vídeo e os elementos de áudio são projetados para permitir um retorno ao Flash, que funcionará bem no Internet Explorer.
A mudança para HTML5 ainda será gradual, e alguns não verão nem terão a necessidade de usar nenhuma das novas funcionalidades que ele fornece, mas quando o fazem, podem estar (relativamente) seguros por saberem que navegadores mais antigos irá renderizar seus sites muito bem.