segunda-feira, 13 de dezembro de 2010

Compatibilidade de navegadores e os padrões W3C




E vamos a um assunto que todo desenvolvedor web enfrenta, a clássica incompatibilidade de sites entre os navegadores. (Basicamente seria entre o Internet Explorer e os navegadores de verdade. - opinião pessoal)
Mas o fato é que temos de obedecer a um padrão para desenvolver conteúdo Web, e o responsável pela manutenção, criação e aprimoramento dessas normas é o consórcio W3C (World Wide Web Consortium) formado por mais de 300 empresas. Sua missão é:
“Conduzir a World Wide Web para que atinja todo seu potencial, desenvolvendo protocolos e diretrizes que garantam seu crescimento de longo prazo.”

A formação de um padrão Web tem como objetivo criar regras para que todos os desenvolvedores utilizem (pelo menos deveriam) e com isso diminuir as chances de incompatibilidade de um conteúdo em diversos aplicativos, ou seja, nos navegadores. Além do que, boas práticas de programação nunca são de mais né?
Entre as tecnologias que estão padronizadas pela W3C podemos citar: HTML, XHTML, XML, CSS, SVG, Web Móvel, PNG, CGI, DOM...
Até aqui tudo bem, massss... (sempre tem um massss) porque, mesmo seguindo os padrões da W3C, alguns sites não se comportam como deveriam? A resposta: Internet Explorer e a Microsoft não seguem o padrão da W3C à risca! Por quê?
Uma explicação que li foi a seguinte: a Microsoft possui um padrão próprio para interpretar o CSS das páginas, isso seria devido ao fato do IE ser um navegador já antigo e a cada versão era necessário manter o padrão pois, até então, praticamente todo mundo usava somente ele.
Isso começou a mudar com o IE8, devido a outros navegadores terem tomado boa parte do seu “mercado” como, Firefox, Opera, Chrome, Safari, etc., mas seguindo as palavras de Chris Wilson (engenheiro do IE):
“In the past in the development of a new version of IE, we pay more attention to the compatibility version, and now I will meet the standards as possible."

“...as possible.” não me anima muito hehehehehe
Mas se existe um padrão esse deverá ser seguido, se nós usamos como base para desenvolver, porque eles também não utilizam? Os outros navegadores seguem o padrão da W3C para interpretação do HTML, CSS, etc. o que facilita o desenvolvimento, mas como ele ainda ocupa uma grande fatia do mercado, temos que batalhar um pouco mais e gastar algumas horas para consertar a falta de padrão do IE.
Ultimamente, ao criar um site, sigo os padrões da W3C e vou avaliando através do Chrome, Firefox e IE (nessa ordem) em busca de eventuais divs perdidas, textos flutuantes, e outras mágicas que teimam em aparecer. Posso dizer que quanto mais próximo do W3C menos dor de cabeça teremos e a prática constante leva a aprendermos outras técnicas que facilitam essa difícil tarefa de agradar todos navegadores.
É isso aí galera, seguem algumas dicas de site para conhecer mais o W3C, o que é, os padrões, etc., além de ferramentas para testar a compatibilidade do seu site/sistema!

Abraços...

Fontes:
http://www.softcov.com/web-client/when--a-browser-compatibility-issue.html
http://www.w3c.br/ (em português)
http://www.w3c.br/divulgacao/#1 (Lista dos padrões – CSS, HTML, etc)
http://azarrodesign.blogspot.com/2010/11/por-que-existe-incompatibilidade-nos.html
http://msdn.microsoft.com/pt-br/library/cc351024(v=vs.85).aspx (o que funciona e o que não em cada versão do IE)
http://www.w3schools.com/browsers/browsers_stats.asp (Estatística dos navegadores mais utilizados)

Dicas de ferramentas para testar a compatibilidade:
http://validator.w3.org/ (Validador oficial da W3C)
http://www.powermapper.com/products/sortsite/checks/browser-compatibility.htm (teste a sua página e veja os erros que ela apresenta nos navegadores mais comuns)
http://www.w3schools.com/css/default.asp (site com explicações e exemplos de CSS, contém outras seções de HMTL, JavaScript... muito bom esse)
http://maujor.com/ (site brazuca sobre CSS, já acessei bastante!)

Nenhum comentário:

Postar um comentário