quinta-feira, 8 de março de 2007

CSS - The begining

Meu primeiro post.

Pretendo mostrar toda a indignação sobre o que as pessoas fazem com CSS para funcionar em Mozilla Firefox, IE6, IE7. Ultimamente em meu trabalho na suprifattus tenho utilizado bastante essa tecnologia pois estamos migrando alguns projetos antigos e novos para funcionarem nos 3 browsers diferentes.
Tenho visto códigos de diferentes designers e o que mais prejudica a migração, são os códigos CSS com mais especificação e mais complicação em suas sintaxes.

Por exemplo:
div.grid th:hover
{
background-color:#ebeff3;
}
div.grid tr:hover
{
background-color:#ebeff3;
}
div.grid tr:hover td
{
background-color:#e3e8ee;
}



Vejam quantas TAGS o designer utilizou apenas para mudar a cor de fundo de uma tabela em CSS.
Todas estas tags não são necessárias para mudar a cor de fundo de uma linha na tabela quando passar o mouse encima. Podemos eliminar a primeira e a terceira que não fará diferença nenhuma. Em IE a ação hover não é reconhecida em todas as tags, menos em a:hover.

Bom... Concluindo, se vocês estiverem pensando em fazer algo genérico. Quanto menas linhas de código utilizarem, mais fácil será. A chave do CSS Genérico esta na colocação de DIVs nos locais corretos.

Posição é TUDO!!

3 comentários:

Gabarito disse...
Este comentário foi removido pelo autor.
Gabarito disse...

O meu! sou parceiro de fazer um bloguizinho de programaçào, em grupo!! eras muito!

Guilherme Dupont disse...

Bah tu cria um blog falando que sabe programar e vêm com papo de CSS, que nem programação é. Poe alguma coisa de programação aÊ!

Mas mudando de assunto, como tu citou, não é o Designer que faz código, esse cara se chama Webdesigner.

E o que tu fala sobre suportar diversos navegadores se chama crossbrowser. Em algumas situações somos obrigados a usar CSS hacks para o navegador renderizar de modo correto (gambiarra detected).

E a chave do CSS genérico não está na colocação de DIVs nos locais corretos, mas sim das tags nos locais corretos (semântica!!). Apesar de parecer, mas HTML não é uma linguagem visual (é estrutural, de marcação). O visual/formatação se faz com o CSS (folha de estilo).

Eu sei que sou chato, mas boa sorte com teu aprendizado. Estarei sempre aqui pra encomodar.

E isso mesmo, Posição é Tudo.
http://www.positioniseverything.net/