O CSS no mundo dos browsers



Trabalhar com web é muito interessante pois se por um lado tem toda a questão tecnológica que faz com que todo dia seja um dia diferente, com novas possibilidades de exploração da "ferramenta" Internet, por outro, quem no background, fazendo o barco andar, tem que se virar para apresentar conteúdo, layout e comportamento dos elementos de maneira muito semelhante nos diversos browsers disponíveis. Sem falar quando há mudança drástica no dispositivo que irá ler as páginas, como os móveis.

Essa Babel toda se dá porque existe um padrão semântico de construção de páginas feito pela W3C e que alguns browsers são mais fiéis a esse padrão e outros nem tanto. Porém, na Internet o que mais importa não é nem o site em si, e sim se os usuários conseguem aquilo que objetivaram ao acessar, o cliente final. Logo, nos deparamos com as estatísticas de visitação e detectamos que, nossos usuários utilizam o browser A versão 1.0, A 2.5, A 3.0, B versão 2.0 e C 4.0. O que fazer para que todos possam ter a mesma experiência ou muito parecida?

Os padrões Html/Xhtml são passos básicos nesse processo todo e não pretendo entrar em detalhes, pelo menos não nesse post. Quero falar mais sobre o uso do CSS e sua árdua tarefa de apresentar o conteúdo da maneira planejada nas mais variadas formas de nosso usuário acessar nossas páginas.

Parto de alguns fatos: Existem diversos browsers/versões e cada um tem um ou mais aspectos de interpretação do CSS diferentes. Não existe browser 100% fiel aos padrões mas existem alguns que chegam perto.

Até o ano passado eu pensava assim: "Vou desenvolvendo o CSS e testando no Firefox como referência, parte por parte, fazendo os ajustes necessários para o visual nos demais browsers". E como não poderia deixar de ser, chegava uma hora que eu necessitava de algum tipo de truque. Nesse momento eu tinha algumas opções, usar um Hack que não validasse, usar um Hack que validasse ou usar Conditional Comments quando o browser fosse o Internet Explorer. E assim eu ia desenvolvendo...

Se era o mais certo ou não, não interessa muito, mas era assim que eu fazia o CSS. Mas em 2007 eu comecei a pensar diferente. Se o problema está na interpretação do que eu coloco no CSS, por que eu não tento descobrir o que dá problema em determinado browser e, se possível, evitar usar? Foi assim que os CSS de alguns de meus projetos foram feitos, como o blog Codesignville, não necessitando de nenhum tipo de Hack nem Conditional Comments e funcionando bem nos vários browsers que eu testei. Obviamente, tudo dependerá da real necessidade de usar determinado seletor ou uma propriedade.

Por exemplo, um dos grandes problemas do Internet Explorer é em relação à propriedade padding. Se eu sei isso, ao máximo eu tento evitá-la, se der para usar margin, melhor, menos problemas. Como já mencionei, nem sempre é possível evitar tudo, depende muito do layout, mas o que importa é buscar alternativas para deixar o CSS o mais limpo de Hacks possível.
Autor: Pedro Assumpção


Artigos Relacionados


Artigo: Navegador Firefox Já é Considerado Melhor Que O Internet Explorer Na Europa

Iniciando Html

Html 5 Preview

Projeto Para Construção De Ótimos Websites

Como Facilitar A Navegação No Seu Site

Computador Mais Rápido

Como Analisar O Seu Site?