Atualizado: 4.4.2008
 
Projetos web
Recursos, técnicas

CSS (Cascading Style Sheets, folhas de estilo em cascata)

 

Recurso de programação de páginas web para a formatação de documentos web, que permite a separação entre as marcações de forma e conteúdo. É um mecanismo simples, embora muito poderoso, para formatar elementos de um documento web, seja o layout dos elementos, textos, imagens, elementos de navegação.

Os estilos são compatíveis com a maioria dos browsers e suas versões mais antigas.

Simplificam o processo de atualização do layout do site todo sem necessidade de reprogramar cada página.

Permitem a geração de menos código por página e menos utilização de largura de banda. Exemplos

Estrutura do código

De modo geral, os estilos CSS têm, por exemplo, a seguinte estrutura:

seletor {color: #FF0000;}

Sendo a cor ("color") a propriedade e "#FF0000" o valor da propriedade.

A propriedade e o valor se aninham entre chaves { } e são fechados por ponto e vírgula (;).

Além da grafia de cada estilo, é importante pensar a estrutura do documento que contém os estilos, para que estes sigam uma hierarquia baseada na sua ordem de colocação.

Na mesma folha de estilo, os blocos de marcações são dispostos de acordo com os tipos de conteúdo formatado, para facilitar a sua localização, atualização e aproveitar a subordinação entre eles (as marcações que vêm primeiro na ordem influenciam as marcações que entram depois).

Marcações de ordem mais gerais, como <body>, que se referem ao arquivo todo, devem ficar no alto, para não serem "influenciadas" por outras marcações, como no caso abaixo:

body {
margin: 0px;
padding: 0px;
background-image: url(/img/foto_fundo.jpg);
background-position: 430px 35px;
background-repeat: no-repeat;
}
div#logotipo {
top: 80px;
left: 57px;
position: absolute;
}
div#navegacao {
float: left;
width: 250px;
left: 0px;
position: absolute;
top: 140px;
height: 315px;
clear: both;
z-index: -2;
}
div#conteudo {
padding: 0px 135px 0px 205px;
margin: 0px 0px 20px;
font-family: Trebuchet, Verdana, Helvetica, sans serif;
vertical-align: top;
clear: none;
z-index: auto;
overflow: visible;
}
.texto {
font-size: 65%;
line-height: 115%;
}

Os tipos de informações indicados acima se situam na ordem em que normalmente são publicadas nas páginas, o que faz com que seja mais fácil controlar a influência de um estilo sobre o outro, localizado em nível mais baixo.

Para facilitar a localização dos blocos de formatação, especialmente em sites onde não apenas uma pessoa, mas uma equipe é responsável por sua manutenção, os nomes dos estilos e de suas subordinações devem ser facilmente identificáveis.

Ex: navEsquerda, navAlto, navBaixo

O nome dos estilos também pode ajudar a construir uma estrutura semântica de marcações, com o uso de valores descritivos no atributo "class" dos estilos (embora o atributo "span" não esteja associado a significados em particular).

Exemplo:
<div class="nomedoartigo" id="coluna2">
<span class="titulo">Sobre o uso de CSS</span>
<span class="autor">Porter, Joshua</span>
<span class="autor">MacManus, Richard</span></div>

Para facilitar o trabalho das equipes encarregadas pela manutenção e atualização, os estilos devem ser descritos um a um em documento facilmente acessável, de forma que todos os integrantes possam conhecer as marcações e os objetos a que estão aplicados.

A descrição de cada estilo deve estar presente nas especificações do produto.


Assuntos relacionados
XHTML - Separar forma e conteúdo
Navegadores : A forma estruturada independente de plataforma deve permear o projeto
Testes de compatibilidade

Mais informação sobre o assunto (links externos)
i-Learrn (Curso de Formação Web Standards, único centro de treinamento do W3C no Brasil)
HTML.net - tutoriais de HTML e CSS
Tableless (http://www.tableless.com.br/) - site que tem como objetivo compartilhar informações, idéias e estudos relacionados aos Padrões web para desenvolvedores
WebStandards (http://www.webstandards.org/)
Tutoriais CSS, Tableless, web standards e acessibilidade - site desenvolvido por Maurício Samy Silva, com exemplos, modelos e artigos, inclusive com tradução das Técnicas CSS para acessibilidade a conteúdo web publicadas no site do W3C
Writing semantic markup (http://digital-web.com/articles/writing_semantic_markup/)
Validação do código com ferramentas como W3C Validator ou WDG validator
Livro: Criando sites web com folhas de estilo, de Wilson Ruas. Visual Books


 ▲  
Alto