Tableless: Como posicionar elementos de um layout – Recorte CSS
Sim, um tema básico aqui no blog. Ou talvez nem tanto.
Diariamente vejo diversos desenvolvedores se enrolando com essa questão: “Como estruturar um layout css?”, ou “Por que tableless é tão difícil?”, e “Por que no Chrome/Internet Explorer, não fica igual?”
Impossível escrever uma receita de bolo que sirva para todos os layouts, que resolva todos os efeitos visuais..
Depende de cada projeto, a variação do design faz que tenhamos que analisar cada um individualmente, mas ainda assim, vou tentar escrever algumas dicas que de forma geral podem te ajudar a ter menos problemas ao fazer um recorte tableless.
CSS Reset/Normalize
Só comece a escrever o teu css, depois te ter algum css reset declarado. Nem que seja um:
* { margin: 0; padding: 0; border: none; }
DOCTYPE
Escolha algum. Eu recomendo o doctype html5, ou o strict xhtml.
Position
Evite usar position. Muitos se perdem e saem fazendo tudo, absolutamente tudo com position: absolute;
Pare já com isso. Não use. Posicione os “grandes blocos”, a estrutura do layout, ou seja, topo, conteudo , colunas e rodapé, com float, margin e clear.
Apenas isso. Evite também valores muito altos de margins e paddings.
Semântica
Seja semântico. Se você tem um texto, use a tag <p>, se tem uma imagem que passa informação, use e assim por diante.
Deixe que o conteúdo lhe diga qual tag vc deve usar.
Use poucos elementos
Evite desperdiçar marcação html. Não há motivo para por exemplo, usar uma tag
8
Não chute
Sei que nem sempre sabemos como chegar a tal feito, mas não fique chutando regras css e elementos html. Limpe eles depois. Não deixe regras css inúteis nos teus elementos.
Leia estes posts
- Nem só de <div> vive um desenvolvedor FrontEnd
- Como iniciar um recorte Tableless – comece !
- Como iniciar um recorte tableless – ensinando a pensar
- O elemento HTML body nos nossos sites, como melhor aproveitá-lo.
- Mau cheiro em código css – Como sentir
- Outros maus cheiros em código css – Como sentir
- Separação de camadas no FrontEnd
- Otimizações para websites não óbvias
- Meu boilerplate de projetos de sites html5 e mobile
- Semântica html5 – Comece agora mesmo! Use!
- A semântica da tag
– Simplesmente não use ! - Devemos saber desenvolver para internet explorer [ie]!
Depois de ler esse arsenal de posts, espero ter aberto a sua mente para que você comece a criticar a forma com que vc vinha fazendo sites até hoje, e passe para o próximo nível, desenvolvendo em menos tempo, e com muito mais qualidade.
=)