Folhas de Estilo – CSS (“Cascading Style Sheets”)

Conceitos Básicos
Sintaxe
Seletores
Folhas de estilo externas
Folhas de estilo incorporadas
Folhas de estilo inline
Elementos para aplicação de estilos
A colocação dos elementos em CSS baseia-se em caixas
Pseudo-classes
Pseudo-elementos
Exemplos de aplicação da linguagem CSS

 

Conceitos Básicos

“Style sheets” permitem desenvolvedores Web anexar formatações de textos, cores e espaçamentos em documentos HTML a serem aplicadas em um conjunto de elementos.
Top...

Sintaxe

A sintaxe do CSS é dividida em duas partes: seletor e declaração.

A declaração em Cascading Style Sheets é uma propriedade e seu correspondente valor, onde se define o código do estilo a ser usado.

Ex: H1 { color: blue}

Declaração CSS simples, que aplica cor azul ao elemento HTML H1,

onde H1 é um seletor e { color: blue} é a declaração.

A declaração também é dividida em duas partes: propriedade (que neste exemplo é color) e valor (blue é o valor da propriedade color).

Portanto, em geral a sintaxe CSS segue a regra:

seletor { propriedade1: valor; propriedade2: valor ...}

seletor: é a ligação entre o documento HTML e a folha de estilo CSS. Descreve o elemento ao qual o estilo será aplicado.

propriedade: refere-se ao tipo do estilo que você irá usar. Por exemplo, para aplicar um estilo no tamanho da fonte você utilizará a propriedade font-size.

valor: é a configuração aplicada à propriedade. Por exemplo, você pode utilizar para tamanho da fonte 20pt(20 pontos), ou para a cor red.

propriedade:valor – é a declaração. Podendo declarar diversas propriedades, basta separá-las por ponto-e-vírgula(;).

Ex: <style type=“text/css”>

p{ font-family: verdana; color: red }

</style>

Neste exemplo o texto aparecerá vermelho com fonte Verdana.

Obs: Quebras de linha e espaços em branco são ignorados. Por isso, utilize-os para organizar suas declarações:

<style type=“text/css”>

p{

font-family: verdana;

color: red }

</style>
Top...

Seletores
Seletor contextual

Seletor que utiliza o próprio elemento HTML para declarar o estilo a ser aplicado.

Ex.:

BODY {

color: black;

background: url(texture.gif) white;

}

P { font-size: 10pt }

h1 {

font-weight: bold;

font-size: 12pt;

line-height: 14pt;

font-family: Helvetica

}

Para reduzir o tamanho do código da folha de estilo, você pode declarar um grupo de seletores, apenas separando-os por vírgula:

h1, h2, h3 { font-family: helvetica }

De forma similar para as propriedades:

h1 {

font-weight: bold;

font-size: 12pt;

line-height: 14pt;

font-family: helvetica }

Equivale a:

h1 { font: bold 12pt/14pt helvetica }

Seletor de classe

Para aumentar os recursos de estilo para os elementos, pode-se adicionar novos atributos ao HTML. Definir uma classe é personalizar uma tag HTML. Basta utilizar um ponto seguido do nome da classe após o elemento (seletor).

Ex: <style type=“text/css”

elemento.NomedaClasse {propriedade: valor; ... }

</style>

onde:

elemento – é o seletor(as tags HTML).

.NomedaClasse – é o nome que você escolheu para a classe.

Ex: <html><head>

<style type="text/css">

A.meulink {color: blue; text-decoration: none }

</style>

</head><body>

<A CLASS="meulink" href="http://www.exemplo.com.br/"> Link1</A>

<A href="http://www.exemplo.com.br/"> Link2</A>

</body></html>

ou ainda, pode definir uma classe sem especificar na declaração a que elemento ela está associada, podendo utilizá-la com qualquer elemento que suporte a propriedade definida:

Ex: <html><head>

<style type="text/css">

.texto1 {color: blue; text-decoration: none }

.texto2 {color: red; text-decoration: underline }

.meuestilo { font-family: arial, color: red }

</style>

</head><body>

<A CLASS="texto1" href="0http://www.exemplo.com.br"> Link1</A>

<A CLASS="texto2" href="pagina2.html"> Link2</A>

<h1 class="meuestilo"> Um cabeçalho com meu estilo</h1>

<p class=“meuestilo”> Um cabeçalho com meu estilo</p>

</body></html>
Seletor de ID

Usado para garantir um único valor sobre o documento. É precedido pelo sinal de “#”.

Ex: <style type=“text/css”

#identificador {letter-spacing: 0.3em }

h1#identificador {letter-spacing: 0.5em }

</style>

<h1 ID=“identificador”>Texto espaçado</h1>
Top...

Folhas de estilo externas

Indicado quando pretende-se utilizar os mesmos estilos para várias páginas.

Um arquivo texto à parte com a extensão .css é definido. Para inseri-lo num documento HTML basta referenciá-lo com o elemento LINK.

Ex: crie o arquivo “estilo1.css”

h1 {

font-family: “comics sans ms”;

font-size: 36pt;

color: blue }

p {

font-family: “arial”;

font-size: 15pt;

color: red;

margin-left: 5pt }

Agora para utilizá-lo, acrescente-o na linha de cabeçalho em cada documento HTML:

<link rel= "stylesheet" type="text/css" href="estilo1.css">

onde:

rel= “stylesheet” – informa ao navegador para encontrar uma folha de estilo.

type=“text/css”- informa ao navegador em que formato deve receber o estilo.

href= “estilo1.css”- informa ao navegador onde está o arquivo com as definições da folha de estilo.

Ex: <html>

<head>

<link rel= "stylesheet" type="text/css" href="estilo1.css">

</head>

<body>

<h1>cabeçalho nível 1</h1>

<p>...parágrafo<?p>

</body>

</html>
Top...

Folhas de estilo incorporadas

Indicadas quando as definições são usadas por um único documento. É definido no cabeçalho do documento HTML, dentro do elemento <style>. As declarações afetam somente a página atual.

Ex: <style type= “text/css”>

<!- -

... aqui vai a declaração do seu estilo...

- ->

</style>

Ex1: <head>

<style type= “text/css”>

p {

background-color: #ffffff;

font-family: “arial”;

font-size: 14pt }

</style>

</head>

<body>

<p>Exemplo</p>
Top...

Folhas de estilo inline

Indicada quando o estilo é aplicado apenas uma única vez. O estilo é definido dentro da própria tag HTML.

Sintaxe: <TAG_HTML STYLE="estilos css">

onde:

TAG_HTML – é a tag HTML em questão.

“estilos css” – é a definição dos estilos.

Ex: <body>

<a style="color: green; text-decoration: none" href= http://www.exemplo.com.br>

</body>
Top...

Elementos para aplicação de estilos

<DIV>

As tags <div></div> são utilizadas na formatação de um trecho do documento, consideradas uma divisão. Insere uma seção no documento.

<SPAN>

Usa-se para alterar as definições de estilo apenas numa pequena parte do texto.
Top...

A colocação dos elementos em CSS baseia-se em caixas

Todo e qualquer elemento que pode ser visto numa página da Web ocupa uma determinada área na página. Essa área tem a forma de um retângulo, que designamos por caixa. A caixa de um elemento contém tudo aquilo que lhe diz respeito: conteúdo, linhas de contorno, margens e espaço em branco. O gráfico que pode ver a seguir representa as diversas áreas que constituem a caixa de um elemento.

Top...

Pseudo-classes

As pseudo-classes permitem-nos associar efeitos especiais a selectores CSS ou a partes de selectores. Sintaxe:

selector:pseudo-classe { propriedade: valor }

ou

selector.classe:pseudo-classe { propriedade: valor }

Pseudo-classe W3C Finalidade
active CSS1 Define o estilo a aplicar a um link seleccionado
hover CSS1 Define o estilo a aplicar a um link quando o ponteiro do rato está sobre ele
link CSS1 Define o estilo a aplicar a um link que ainda não foi visitado
visited CSS1 Define o estilo a aplicar a um link que já foi visitado
first-child CSS2 Define o estilo as aplicar ao primeiro dos elementos que se encontram dentro de um outro elemento (primeiro descendente.)
lang CSS2 Permite definir atributos estilísticos diferentes para aplicar ao texto escrito numa determinada língua

Top...

Pseudo-elementos

Os pseudo-elementos são usados em CSS para adicionar efeitos a alguns selectores ou a partes de selectores. Sintaxe:

selector:pseudo-elemento { propriedade: valor }

ou

selector.classe:pseudo-elemento { propriedade: valor }
Pseudo-elementos W3C Finalidade
first-letter CSS1 Define um estilo especial para a primeira letra de um texto.
first-line CSS1 Define um estilo especial para a primeira linha de um texto.
before CSS2 Insere algum conteúdo antes de um elemento
after CSS2 Insere algum conteúdo depois de um elemento

Top...

Exemplos de aplicação da linguagem css.

Propriedades

1. Fundos (background)

Propriedade Descrição Valores W3C
Oferece-nos uma forma abreviada para escrever todas as propriedades do fundo de um elemento numa única declaração.
background-color
background-image
background-repeat background-attachment background-position
CSS1
A propriedade background-attachment indica se a imagem de fundo deve permanecer imóvel na janela do browser ou se acompanha o deslizamento (scroll) da página.
scroll
fixed
CSS1
Define a cor de fundo de um elemento.
color-rgb
color-hex
color-name
transparent
CSS1
Define uma imagem para ser usada como fundo no elemento.
url
none
CSS1
Define o local onde se começa a desenhar a imagem de fundo.
top left
top center
top right
center left
center center
center right
bottom left
bottom center
bottom right
x-% y-%
x-pos y-pos
CSS1
Estabelece se a imagem de fundo deve repetir-se (formando um mosaico) ou não e as direções da repetição.
repeat
repeat-x
repeat-y
no-repeat
CSS1

 

2 . Linhas de borda (border)

Propriedade Descrição Valores W3C
Oferece uma forma abreviada para escrever numa única declaração todos os parâmetros relativos às linhas de fronteira.
border-width
border-style
border-color
CSS1
Oferece-nos uma forma abreviada para escrever todas as propriedades da linha de fronteira do lado de baixo numa única declaração.
border-bottom-width
border-style
border-color
CSS1
Define a cor da linha de fronteira de baixo
border-color
CSS2
Define o estilo da linha de fronteira de baixo
border-style
CSS2
Define a espessura da linha de fronteira de baixo
thin
medium
thick
comprimento
CSS1
Define a cor das quatro linhas de fronteira. Aceita de um a quatro valores.
cor
CSS1
Oferece-nos uma forma abreviada para escrevermos todas as propriedades da linha de fronteira do lado esquerdo numa única operação.
border-left-width
border-style
border-color
CSS1
Define a cor da linha de fronteira do lado esquerdo.
border-color
CSS2
Define o estilo da linha de fronteira do lado esquerdo.
border-style
CSS2
Define a espessura da linha de fronteira do lado esquerdo.
thin
medium
thick
comprimento
CSS1
Oferece-nos uma forma abreviada para escrevermos todas as propriedades da linha de fronteira do lado direito numa única declaração.
border-right-width
border-style
border-color
CSS1
Define a cor da linha de fronteira do lado direito.
border-color
CSS2
Define o estilo da linha de fronteira do lado direito.
border-style
CSS2
Define a espessura da linha de fronteira do lado direito.
thin
medium
thick
comprimento
CSS1
A propriedade border-style define o estilo das quatro linhas de fronteira. Aceita de um a quatro valores.
none
hidden
dotted
dashed
solid
double
groove
ridge
inset
outset
CSS1
Oferece-nos uma forma abreviada para escrevermos todas as propriedades da linha de fronteira do lado de cima numa única declaração.
border-top-width
border-style
border-color
CSS1
Define a espessura da linha de fronteira superior.
border-color
CSS2
Define o estilo da linha de fronteira superior.
border-style
CSS2
Define a espessura da linha de fronteira superior.
thin
medium
thick
comprimento
CSS1
Oferece-nos uma forma abreviada para definirmos as espessuras de todas as linhas de fronteira. Aceita de um a quatro valores.
thin
medium
thick
comprimento
CSS1

 

3. Propriedades de classificação

Propriedade Descrição Valores W3C
Define os lados de um elemento dentro do qual não são permitidos elementos flutuantes
left
right
both
none
CSS1
Especifica o tipo de cursor a apresentar
url
auto
crosshair
default
pointer
move
e-resize
ne-resize
nw-resize
n-resize
se-resize
sw-resize
s-resize
w-resize
text
wait
help
CSS2
Indica se um elemento deve ser apresentado e a forma como deve ser apresentado.
none
inline
block
list-item
run-in
compact
marker
table
inline-table
table-row-group
table-header-group
table-footer-group
table-row
table-column-group
table-column
table-cell
table-caption
CSS1
Define o lugar onde uma imagem ou bloco deve aparecer dentro de outro elemento.
left
right
none
CSS1
Coloca um elemento numa destas posições: estática, relativa, absoluta ou fixa.
static
relative
absolute
fixed
CSS2
Indica se um elemento deve estar visível ou invisível.
visible
hidden
collapse
CSS2

 

4. Controle dos tamanhos dos elementos

Propriedade Descrição Valores W3C
Define a altura de um elemento
auto
comprimento
%
CSS1
Define a distância entre as linhas
normal
número
comprimento
%
CSS1
Define a altura máxima de um elemento
none
comprimento
%
CSS2
Define a largura máxima de um elemento
none
comprimento
%
CSS2
Define a altura mínima de um elemento
comprimento
%
CSS2
Define a largura mínima de um elemento
comprimento
%
CSS2
Define a largura de um elemento
auto
%
comprimento
CSS1

 

5. Tipos de letra (font)

Propriedade Descrição Valores W3C
Este propriedade oferece-nos uma forma abreviada para definir numa única declaração todas as propriedades relativas ao tipo de letra.
font-style
font-variant
font-weight
font-size/line-height
font-family
caption
icon
menu
message-box
small-caption
status-bar
CSS1
A propriedade font-family consiste numa lista com os tipos de letra que o browser pode escolher para escrever os textos. A lista está ordenada de forma prioritária: a primeira escolha aparece primeiro, a seguir vem a segunda escolha e assim sucessivamente. O browser escolhe o primeiro tipo que é capaz de usar. Os nomes dos tipos de letra podem ser nomes de família ou nomes genéricos.
family-name
generic-family
CSS1
Define o tamanho a aplicar a um tipo de letra.
xx-small
x-small
small
medium
large
x-large
xx-large
smaller
larger
comprimento
%
CSS1
Se o tipo de letra (font) escolhido não estiver disponível, o browser vê-se obrigado a usar um outro tipo diferente. A propriedade font-size-adjust especifica o "aspect value" do tipo de letra escolhido para que o browser possa substituí-lo por um outro tipo que esteja acessível preservando a altura da letra "x" e mantendo a legibilidade do texto.
none
número
CSS2
A propriedade font-stretch provoca uma expansão ou uma contração horizontais no tamanho da letra.
normal
wider
narrower
ultra-condensed
extra-condensed
condensed
semi-condensed
semi-expanded
expanded
extra-expanded
ultra-expanded
CSS2
Define o estilo a aplicar ao tipo de letra.
normal
italic
oblique
CSS1
Escreve o texto usando um tipo de letra "small-caps" ou o tipo normal.
normal
small-caps
CSS1
Define a espessura do traço com que são desenhadas a letras.
normal
bold
bolder
lighter
100
200
300
400
500
600
700
800
900
CSS1

 

6. Gerar conteúdos

Propriedade Descrição Valores W3C
Gera conteúdos e insere-os no documento. Usa-se em conjunto com os pseudo-elementos :before e :after
string
url
counter(name)
counter(name, list-style-type)
counters(name, string)
counters(name, string, list-style-type)
attr(X)
open-quote
close-quote
no-open-quote
no-close-quote
CSS2
Define quanto se deve incrementar o contador por cada ocorrência de um selector.
none
número identificador
CSS2
Define o valor a dar ao contador sempre que ocorre um selector.
none
número identificador
CSS2
Define o estilo das aspas.
none
string string
CSS2

 

7. Listas e marcadores

Propriedade Descrição Valores W3C
Este propriedade oferece-nos uma forma abreviada para definir numa única declaração todas as propriedades relativas a uma lista.
list-style-type
list-style-position
list-style-image
CSS1
Define uma imagem como marcador de item numa lista
none
url
CSS1
Define o local em que o marcador deve ser colocado na lista.
inside
outside
CSS1
Define o tipo de marcador a usar.
none
disc
circle
square
decimal
decimal-leading-zero
lower-roman
upper-roman
lower-alpha
upper-alpha
lower-greek
lower-latin
upper-latin
hebrew
armenian
georgian
cjk-ideographic
hiragana
katakana
hiragana-iroha
katakana-iroha
CSS1
marker-offset
auto
comprimento
CSS2

 

8. Margens

Propriedade Descrição Valores W3C
Propriedade que nos oferece uma forma abreviada para definir numa única declaração todas as propriedades relativas às quatro margens de um elemento.
margin-top
margin-right
margin-bottom
margin-left
CSS1
Define a margem inferior de um elemento.
auto
comprimento
%
CSS1
Define a margem esquerda de um elemento.
auto
comprimento
%
CSS1
Define a margem direita de um elemento.
auto
comprimento
%
CSS1
Define a margem superior de um elemento.
auto
comprimento
%
CSS1

 

9. Linhas de contorno

Propriedade Descrição Valores W3C
Oferece-nos uma forma abreviada para definir todas as propriedades do contorno numa única declaração.
outline-color
outline-style
outline-width
CSS2
Define a cor do contorno de um elemento.
color
invert
CSS2
Define o estilo do contorno de um elemento.
none
dotted
dashed
solid
double
groove
ridge
inset
outset
CSS2
Define a espessura da linha de contorno de um elemento
thin
medium
thick
comprimento
CSS2

 

10. Espaço em branco dentro de um elemento (padding)

Propriedade Descrição Valores W3C
Propriedade que nos oferece uma forma abreviada para definir numa única declaração todos os aspectos dos espaçamentos entre o conteúdo de um elemento e os seus limites.
padding-top
padding-right
padding-bottom
padding-left
CSS1
Define o espaço que separa o conteúdo de um elemento do seu limite inferior.
comprimento
%
CSS1
Define o espaço que separa o conteúdo de um elemento do seu limite esquerdo.
comprimento
%
CSS1
Define o espaço que separa o conteúdo de um elemento do seu limite direito.
comprimento
%
CSS1
Define o espaço que separa o conteúdo de um elemento do seu limite superior.
comprimento
%
CSS1

 

11. Posicionamento

Propriedade Descrição Valores W3C
Define a distância (para baixo ou para cima) a que deve ficar o limite de baixo de um elemento relativamente ao limite de baixo do elemento que o contém.
auto
%
comprimento
CSS2
Define a forma de um elemento. O elemento é recortado na forma desejada e depois mostrado.
shape
auto
CSS2
Define a distância (para a esquerda ou para a direita) a que deve ficar o limite esquerdo de um elemento relativamente ao limite esquerdo do elemento que o contém.
auto
%
comprimento
CSS2
Define o que acontece quando o conteúdo de um elemento excede a sua área.
visible
hidden
scroll
auto
CSS2
Define a distância (para a esquerda ou para a direita) a que deve ficar o limite direito de um elemento relativamente ao limite direito do elemento que o contém.
auto
%
comprimento
CSS2
Define a distância (para baixo ou para cima) a que deve ficar o limite de cima de um elemento relativamente ao limite de cima do elemento que o contém.
auto
%
comprimento
CSS2
Define o alinhamento vertical de um elemento.
baseline
sub
super
top
text-top
middle
bottom
text-bottom
comprimento
%
CSS1
Define a ordem de apresentação (prioridade) dos elementos no caso de existir sobreposição entre eles.
auto
número
CSS2

 

12. Formatação de tabelas

Propriedade Descrição Valores W3C
Define o modelo da linha de fronteira de uma tabela.
collapse
separate
CSS2
border-spacing
Define a distância entre as linhas de fronteira de células adjacentes (aplicável apenas quando se usa o modelo "separated borders" para as linhas de fronteira da tabela)
comprimento
CSS2
caption-side
Define a posição da legenda na tabela.
top
bottom
left
right
CSS2
empty-cells
Indica se as células que não têm conteúdo visível devem ter linhas de fronteira ou não (aplicável apenas quando se usa o modelo "separated borders" para as linhas de fronteira da tabela.)
show
hide
CSS2
table-layout
Escolhe o algoritmo a usar para desenhar a tabela.
auto
fixed
CSS2

 

13. Formatação de texto

Propriedade Descrição Valores W3C
Define a cor do texto.
cor
CSS1
Define a direção de escrita do texto.
ltr
rtl
CSS2
Aumenta ou diminui o espaço entre os caracteres.
normal
comprimento
CSS1
Alinha o texto dentro de um elemento.
left
right
center
justify
CSS1
Adiciona pormenores decorativos ao texto.
none
underline
overline
line-through
blink
CSS1
Desloca para a direita ou para a esquerda a primeira letra da primeira linha do texto.
comprimento
%
CSS1
Controla as letras de um elemento.
none
capitalize
uppercase
lowercase
CSS1
unicode-bidi
normal
embed
bidi-override
CSS2
Define a forma como é tratado o espaço em branco dentro de um elemento.
normal
pre
nowrap
CSS1
Aumenta ou diminui o espaço entre as palavras.
normal
comprimento
CSS1

Top...