Você está na página 1de 53

PSI Módulo 19

Tecnologias de Desenvolvimento de Páginas Web

paulo.reis
@aebatalha.ccems.pt
CSS (Cascading Style Sheets)

2
CSS (Cascading Style Sheets)

cap3.

CSS

Introdução
Propriedades Básicas
Margens e Espaçamentos
Seletores Avançados
Posicionamento
3
CSS (Cascading Style Sheets)

Introdução
4
CSS (Cascading Style Sheets)

Cascading Style Sheets

▪ CSS é o acrónimo de Cascading Style Sheets. CSS é uma linguagem


que permite definir o estilo visual de documentos web.
▪ A linguagem CSS permite definir como deve ser apresentado o
conteúdo e estrutura definidos em HTML.
▪ A primeira especificação foi publicada em 1994 mas só a partir de
2001 a linguagem CSS começou realmente a ser utilizada devido ao
suporte introduzido nos principais navegadores web.
▪ As especificações da linguagem CSS são mantidas pelo consórcio
W3C.
5
CSS (Cascading Style Sheets)

Motivação
▪ Porquê separar estrutura e conteúdo (HTML) da apresentação (CSS)?

▪ A escrita e estruturação de conteúdos requer competências diferentes


daquelas necessárias para desenhar a apresentação desses conteúdos. A
separação ao nível das tecnologias facilita a separação e organização do
trabalho nas equipas.

▪ A web é um meio de comunicação multiplataforma. O conteúdo


disponibilizado nos sítios web pode ser consultado usando diferentes
dispositivos (ecrã, telemóvel, documento impresso, voz, etc.). A separação entre
HTML e CSS permite definir o conteúdo e estrutura apenas uma vez e ter
diferentes folhas de estilos em função do dispositivo de destino.

▪ Com CSS é possível definir a apresentação em função do destino.


6
CSS (Cascading Style Sheets)

Visão geral

7
CSS (Cascading Style Sheets)

Diferenciação por Dispositivo


▪ O uso de diferentes instruções CSS para diferentes tipos de dispositivos permite
desenhar e adaptar as interfaces aos dispositivos.

▪ Exemplo: página de entrada do Google consultada em diferentes


dispositivos.

8
CSS (Cascading Style Sheets)

Uso de CSS
▪ Como aplicar CSS a um documento HTML?

1. Criar um novo documento de texto do tipo CSS (extenção .css).

2. Indicar no documento HTML a associação ao documento CSS.

3. Vários documentos HTML podem ser associados ao mesmo documento CSS.

9
CSS (Cascading Style Sheets)

Ligação ao Documento CSS


▪ O uso de regras CSS externas é feito incluindo no cabeçalho de um documento
HTML uma ligação para o ficheiro com as regras CSS.

10
CSS (Cascading Style Sheets)

Documento CSS
▪ Um documento CSS é composto por um conjunto de regras CSS.

11
CSS (Cascading Style Sheets)

Regra CSS

12
CSS (Cascading Style Sheets)

Seletores
▪ Um seletor identifica elementos num documento HTML.

13
CSS (Cascading Style Sheets)

Seletores de Ligações
▪ As ligações HTML têm um conjunto de seletores especiais que permitem
controlar o aspeto em função do estado da ligação e da interação com o
utilizador.

a:link — seletor que se aplica às ligações que ainda não foram visitadas.
a:visited — aplica-se às ligações que já foram visitadas.
a:hover — aplica-se quando o rato está em cima da ligação.
a:active — aplica-se quando a ligação é ativada ( clicada ).

14
CSS (Cascading Style Sheets)

Propriedades e Valores
▪ Cada elemento HTML tem um conjunto de propriedades.

▪ Cada propriedades aceita um conjunto de valores.

▪ As propriedades que não são alteradas, mantêm o valor original.

15
CSS (Cascading Style Sheets)

Propagação de Estilos
▪ Algumas propriedades CSS são propagadas para os elementos filhos de um
elemento HTML.

▪ No exemplo seguinte, os elementos h1 e p vão herdar as alterações que foram


definidas para o elemento body. Isto acontece porque todos os elementos que
estão encaixados dentro do body — também designados como filhos —
herdam as propriedades definidas.

16
CSS (Cascading Style Sheets)

Propriedades Básicas
17
CSS (Cascading Style Sheets)

Formatação de Texto
▪ font-family: Lista ordenada dos tipos de letra a usar.

▪ font-size: Tamanho das letras. Unidades possíveis: px, % ou em.

▪ font-style: Estilo das letras. Opções: normal ou italic.

▪ font-weight: Grossura das letras. Opções: lighter, normal, bold ou bolder.

▪ text-decoration: Efeitos a aplicar ao texto. Opções: none, underline, overline,


line-through.

18
CSS (Cascading Style Sheets)

Tipos de Letra
▪ Para usar um determinado tipo de letra num documento web, é necessário que
esse tipo esteja instalado no computador do utilizador que acede ao
documento.

▪ Os tipos de letra com maior penetração nos computadores são: Arial, Courier
New, Georgia, Times New Roman, Trebuchet, e Verdana.

▪ A propriedade font-family permite indicar uma lista de tipos de letra a usar na


formatação do elemento, ordenados por prioridades. O navegador web tenta
usar o primeiro tipo de letra indicado. Se o tipo não estiver instalado no
computador é tentado o tipo seguinte, e assim sucessivamente.

▪ No final da lista é importante indicar sempre um de dois tipos genéricos: serif


ou sans-serif. Por exemplo: font-family: Verdana, Arial, sans-serif.
19
CSS (Cascading Style Sheets)

Exemplo de Formatação de Texto

20
CSS (Cascading Style Sheets)

Apresentação de Texto
▪ text-align: Alinhamento do texto. Opções: left, right, justify, center.

▪ text-indent: Alinhamento da primeira linha de um bloco de texto.

▪ line-height: Altura de cada linha num bloco de texto.

▪ letter-spacing: Espaçamento entre letras.

▪ word-spacing: Espaçamento entre palavras.

21
CSS (Cascading Style Sheets)

Exemplo de Apresentação de Texto

22
CSS (Cascading Style Sheets)

Principais Unidades
▪ A definição dos valores associadas às propriedades dos elementos pode ser
indicada em CSS usando diferentes unidades.

▪ As principais unidades são as duas seguintes.


▪ px ( píxel ) — Os píxeis representam unidades absolutas, um pixel
corresponde a um pixel no ecrã do utilizador. Exemplos: 10px, 20px, 1px.
▪ % ( percentagem ) — As unidades percentuais representam unidades
relativas, e são calculadas em relação ao contexto do elemento. O contexto
varia em função do elemento e da propriedade. Exemplos: 1%, 100%, 5.5%.

23
CSS (Cascading Style Sheets)

Definição de Cores
▪ Existem várias alternativas para definir cores em CSS.

▪ Palavra-chave: black, yellow, red, blue, etc.

▪ Código RGB: rgb(vermelho, verde, azul)


▪ Exemplos: rgb(100%, 40%, 0%); rgb(255, 102, 0).

▪ Código Hexadecimal: #código hexadecimal


▪ Exemplos: #326432, #000000, #0088ff.

24
CSS (Cascading Style Sheets)

Definição de Cores
▪ color: Cor do texto do elemento.

▪ background-color: Cor do fundo do elemento.

25
CSS (Cascading Style Sheets)

Margens e Espaçamentos
26
CSS (Cascading Style Sheets)

Margens e Espaçamentos
▪ Cada elemento HTML é representado visualmente como uma caixa retangular
composta por três partes: a margem, o contorno e o espaçamento interno.

Programação e Sistemas de Informação

27
CSS (Cascading Style Sheets)

Contorno
▪ É possível definir o contorno de todo o elemento ou apenas de parte.

▪ border: alteração de todo o contorno.


▪ border-top: alteração apenas do contorno de topo.
▪ border-bottom: contorno inferior.
▪ border-left: contorno esquerdo.
▪ border-right: contorno direito.

28
CSS (Cascading Style Sheets)

Contorno
▪ O contorno define-se especificando três valores: a grossura, o estilo e a cor.

▪ Grossura: definida em pixels.


▪ Estilo: none, dotted, dashed, solid, double, groove, ridge.
▪ Cor: valor da cor.

29
CSS (Cascading Style Sheets)

Margem
▪ É possível definir a margem de todo o elemento ou apenas de parte. Na
definição da margem indica-se a distância em pixels.

▪ margin: alteração da margem de todo o elemento.


▪ margin-top: alteração apenas da margem de topo.
▪ margin-bottom: margem inferior.
▪ margin-left: margem esquerda.
▪ margin-right: margem direita.

30
CSS (Cascading Style Sheets)

Espaçamento interno
▪ É possível definir o espaçamento interno de todo o elemento ou apenas de
parte. Na definição do espaçamento indica-se a distância em pixels.

▪ padding: alteração do espaçamento interno de todo o elemento.


▪ padding-top: alteração apenas do espaçamento interno de topo.
▪ padding-bottom: espaçamento interno inferior.
▪ padding-left: espaçamento interno esquerdo.
▪ padding-right: espaçamento interno direito.

31
CSS (Cascading Style Sheets)

Margem e Espaçamento interno

Modificações à margem. Modificações ao espaçamento interno.

32
CSS (Cascading Style Sheets)

Listas
▪ É possível definir a aparência do marcador de cada item com a propriedade
list-style-type.

▪ Marcadores não numéricos: none, disc, circle, square.


▪ Marcadores numéricos: none, decimal, decimal-leading-zero, lowerroman,
upper-roman, lower-latin, upper-latin.

33
CSS (Cascading Style Sheets)

Seletores Avançados
34
CSS (Cascading Style Sheets)

Atributo class
▪ Os elementos de um mesmo tipo têm obrigatoriamente o mesmo aspeto?
Por exemplo, todos os elementos P (parágrafos) de uma página têm de ser
apresentados da mesma forma?

▪ Não. É possível distinguir os elementos usando classes. Todos os elementos


HTML têm um atributo optativo class.

▪ Os nomes das classes podem ser compostos por letras (não acentuadas) ou
algarismos, e devem começar com uma letra. Exemplos: principal, menu,
submenu, rodape, cabecalho, publicidade.

▪ Cada elemento pode pertencer a várias classes. Para atribuir um elemento a


várias classes, basta separar os nomes das diferentes classes com espaços.

35
CSS (Cascading Style Sheets)

Atributo class
▪ Para identificar uma determinada classe em CSS usa-se um ponto seguido do
nome da classe. Exemplos: .menu, .rodape, .destaque.

36
CSS (Cascading Style Sheets)

Seleção Conjunta de Elementos


▪ É possível aplicar a mesma regra CSS a elementos diferentes, para tal basta
separar os vários elementos por vírgulas.

▪ A principal vantagem desta opção é evitar a duplicação de código idêntico.

37
CSS (Cascading Style Sheets)

Seleção de Elementos Encaixados


▪ É possível selecionar elementos em CSS com base na estrutura do HTML. Por
exemplo, selecionar os elementos do tipo A que estão dentro de elementos do
tipo B.

▪ Para selecionar elementos encaixados noutro elemento, usa-se o espaço.

38
CSS (Cascading Style Sheets)

Sumário (dos seletores)

39
CSS (Cascading Style Sheets)

Posicionamento
40
CSS (Cascading Style Sheets)

Posicionamento
▪ Com CSS é possível alterar o fluxo normal de uma página e definir a posição
de cada elemento.

Fluxo Normal Fluxo Modificado com CSS

41
CSS (Cascading Style Sheets)

Propriedade position
▪ Todos os elementos têm a propriedade position que estabelece a forma de
cálculo da posição de um elemento. Existem 4 alternativas para o posicionamento
de um elemento:

▪ static — O elemento é posicionado segundo o fluxo normal. Este é o valor


definido por omissão.
▪ relative — A posição do elemento é calculada em relação à posição original
segundo o modelo estático.
▪ absolute — A posição do elemento é especificada com as propriedades top,
right, bottom e left relativamente ao elemento que contém este.
▪ fixed — O cálculo da posição é igual ao método absoluto mas o elemento
pai é a "janela de visualização" (o navegador).
42
CSS (Cascading Style Sheets)

Propriedades de Posicionamento
▪ A propriedade position é usada juntamente com as propriedades:
▪ top — afastamento do lado superior do elemento.
▪ left — afastamento do lado esquerdo do elemento.
▪ bottom — afastamento do lado inferior do elemento.
▪ right — afastamento do lado direito do elemento.

▪ e também:
▪ width — largura do elemento.
▪ height — altura do elemento.

43
CSS (Cascading Style Sheets)

Propriedades de Posicionamento

44
CSS (Cascading Style Sheets)

Posicionamento Estático
▪ O posicionamento estático corresponde ao posicionamento normal, definido
por omissão. Segue a sequência definida no documento HTML, de cima para
baixo e da esquerda para a direita.
▪ As propriedades top, left, bottom, right não se aplicam.

Técnico de Gestão e
Programação de
Sistemas Informáticos

45
CSS (Cascading Style Sheets)

Posicionamento Relativo
▪ Com o posicionamento relativo, a posição é calculada em relação à localização
natural do elemento. O elemento pode ser deslocado na vertical ou na
horizontal face à posição original.

46
CSS (Cascading Style Sheets)

Exemplos de Posicionamento Relativo

Técnico de Gestão e Programação de Sistemas Informáticos

Gestão e Programação de Sistemas Informáticos

Técnico de Gestão e Programação de Sistemas Informáticos

Técnico de Gestão e Programação de Sistemas Informáticos

47
CSS (Cascading Style Sheets)

Posicionamento Absoluto
▪ Com o posicionamento absoluto, a posição do elemento é calculada em relação
ao elemento 'pai' (o elemento que engloba este).

48
CSS (Cascading Style Sheets)

Posicionamento Fixo
▪ Esta forma de posicionamento é idêntica ao modelo absoluto mas a posição é
calculada em relação à janela do navegador web. Permite, por exemplo, fixar um
elemento independentemente do scroll vertical da janela.

49
CSS (Cascading Style Sheets)

Propriedade float
▪ A propriedade float permite desassociar o elemento do fluxo normal e deslocá-
lo para a esquerda ou direita da linha, permitindo que o restante conteúdo
circule paralelamente ao elemento.

▪ Valores possíveis:
▪ none — Valor por omissão.
▪ left — O elemento é deslocado para a esquerda com o conteúdo
envolvente a flutuar à direita.
▪ right — O elemento é deslocado para a direita com o conteúdo envolvente
a flutuar à esquerda.

50
CSS (Cascading Style Sheets)

Exemplo da Propriedade float

51
CSS (Cascading Style Sheets)

Referências
▪ W3C Cascading Style Sheets
http://w3.org/Style/CSS
▪ CSS 2.1 Specification & Properties
http://w3.org/TR/CSS21
http://w3.org/TR/CSS21/propidx.html
▪ CSS Beginner Tutorial — HTML Dog
http://htmldog.com/guides/cssbeginner
▪ The Web Standards Project — CSS
http://www.webstandards.org/learn/external/css/
▪ W3Scools | CSS Tutorial
https://www.w3schools.com/css/default.asp
52
CSS (Cascading Style Sheets)
M19 Tecnologias de Desenvolvimento de Páginas Web
Programação e Sistemas de Informação paulo.reis
Última revisão: novembro de 2023 @aebatalha.ccems.pt

Você também pode gostar