Escolar Documentos
Profissional Documentos
Cultura Documentos
Módulo 2 – Parte 2
Introdução à Linguagem CSS
Prof. Dr. Daniel A. Furtado - FACOM/UFU
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98
Conteúdo da Aula
1. Propriedades CSS
2. Centralização de Conteúdo
3. Pseudo-Classes
4. Pseudo-Elementos
5. Cascade, Especificidade e Herança
6. Design Responsivo
7. Media Queries
8. Dicas e Validação
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 2
Algumas Propriedades de Ajuste de Fundo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 3
Propriedades de Ajuste de Fundo - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 4
Conteúdo, Padding, Borda e Margem
Padding do elemento
• Envolve o conteúdo
• Afetado pela cor de fundo
• Dentro da borda
Borda do elemento
• Envolve o padding
Margem do elemento
Outline do elemento • Externo à borda
• Externo à borda • Transparente
• Não toma espaço próprio
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 5
Propriedade padding
▪ Propriedade Abreviada
padding: 20px 50px 80px 100px; (superior, direita, inferior e esquerda)
padding: 20px 40px 20px; (superior, laterais, inferior)
padding: 20px 40px; (superior/inferior, laterais)
padding: 20px; (todos os paddings)
▪ Propriedades Individuais
padding-top
padding-bottom
padding-left
padding-right
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 6
Propriedade margin
▪ Propriedade Abreviada
margin: 20px 50px 80px 100px; (superior, direita, inferior e esquerda)
margin: 20px 40px 20px; (superior, laterais, inferior)
margin: 20px 40px; (superior/inferior, laterais)
margin: 20px; (todas as margens)
▪ Propriedades Individuais
margin-top
margin-bottom
margin-left
margin-right
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 7
Propriedade margin - Observação
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 8
Propriedade border
▪ Propriedade Abreviada
▪ Permite definir a borda por completo (4 lados)
▪ Sintaxe mais comum: solid
border: espessura estilo cor; dotted
dashed
Ex.: border: 1px solid blue;
double
▪ A ordem dos valores não importa none
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 9
Definindo as Bordas Individualmente
▪ Propriedades constituintes
• border-top-color
• border-top-style
• etc.
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 10
Definindo Aspectos Específicos das Bordas
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 11
Ajustes de Borda - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 12
Conferindo os valores de
margens, paddings e bordas no
Google Chrome. Clique com o
botão direito sobre o elemento
que desejar verificar e escolha
Inspecionar.
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 13
Propriedade border-radius
1 2
4 3
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 14
Propriedade border-radius
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 15
Propriedade box-shadow
box-shadow: 20px 10px;
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 16
Ajustes de Largura e Altura dos Elementos
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 17
Propriedade display
▪ Altera o modo de apresentação do elemento
▪ Um elemento de linha pode ser exibido como bloco e vice-versa
▪ Permite ocultar um elemento, removendo do layout
▪ Alguns valores possíveis:
• none
• block
• inline
• inline-block
• flex
• grid
• inline-flex
• inline-grid
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 18
Propriedade display
display: none
• oculta completamente o elemento, removendo do layout
• libera o espaço para outros
display: block
• exibição em nível de bloco (como o <div>)
• comecará em nova linha e ocupará, por padrão, toda a largura
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 19
Propriedade display
display: inline
• exibição em nível de linha (como o <span>)
• width e height não terão efeito em alguns elementos
• margens e paddings superior e inferior de alguns elementos
não são respeitados
display: inline-block
• exibição em nível de linha
• possibilidade de usar width e heigh
• margens e paddings superiores e inferiores respeitados
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 20
Item de Lista com display: inline
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 21
Item de Lista com display: inline-block
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 22
Propriedade visibility
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 23
Propriedade float
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 24
Propriedade float - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 25
Propriedade overflow
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 26
Propriedade overflow - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 27
Propriedade position
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 28
Propriedade position
position: static;
• Valor padrão
• Elemento posicionado de acordo com fluxo normal do documento
position: relative;
• Primeiramente posicionado de acordo com o fluxo normal
• Em seguida, é deslocado da sua posição com top, left, right e bottom
• O deslocamento não afeta a posição dos demais elementos
• Layout geral é o mesmo do posicionamento static
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 29
Propriedade position: relative
A C D E
top
F G H G
left
I J
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 30
Propriedade position: relative
A C D E
top
F H G
left
G
I J
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 31
Propriedade position - Valores
position: absolute;
• Elemento removido do fluxo normal
• Nenhum espaço no layout é criado para o elemento
• Pode ser utilizado para centralizar um elemento de bloco
• Posicionamento com top, left, right e bottom relativo ao:
• Ancestral mais próximo posicionado, se houver
• Caso contrário, com relação ao container inicial (elemento <html>)
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 32
position: absolute
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 33
position: absolute
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 34
Propriedade position - Valores
position: fixed;
• Elemento posicionado com relação à viewport (janela do navegador)
• Posição não se altera com a rolagem da página
• Posicionamento com as propriedades top, left, right e bottom
• Elemento removido do fluxo normal - nenhum espaço é criado no layout
• Quando impresso, aparecerá na mesma posição em todas as páginas
position: sticky;
• Elemento posicionado de acordo com fluxo normal do documento
• Ocupa espaço no layout
• Elemento "gruda" no primeiro ancestral com mecanismo de rolagem
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 35
Propriedade transform
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 36
Centralizando Bloco na Vertical com Pos. Absoluto
top=50%
transform: translateY(-50%);
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 37
Centralizando Bloco na Vertical com Pos. Absoluto
top=50%
transform: translateY(-50%);
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 38
Centralizando Bloco na Vertical com Pos. Absoluto
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 39
Centralizando na Vertical e Horizontal com Pos. Absoluto
top=50%
left=50%
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 40
Centralizando na Vertical e Horizontal com Pos. Absoluto
top=50%
left=50%
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 41
Centralizando na Vertical e Horizontal com Pos. Absoluto
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 42
Centralizando na Vertical e Horizontal com Pos. Absoluto
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 43
Centralizando Bloco na Horizontal com width e margin
body {
width: 60%;
margin: 0 auto;
}
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 44
Pseudo-Classes
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 45
Exemplos de Pseudo-Classes
:hover Usuário interage com elem. sem ativar a:hover, button:hover {...}
Ex.: ponteiro do mouse sobre o elemento
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 46
Exemplos de Pseudo-Classes
Pseudo-Classe Descrição Exemplos
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 47
Pseudo-Elementos
▪ Permite selecionar uma parte específica de um elemento
▪ Palavra-chave adicionada a um seletor
▪ Precedida por : :
p::selected {
O texto que o usuário selecionar nos
color: green;
parágrafos aparecerá na cor verde
background-color: black;
com fundo preto
}
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 48
Outros Pseudo-Elementos
input::placeholder {
Altera a cor dos textos de
color: red;
placeholder dos campos input
}
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 49
Pseudo-Elementos - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 50
Pseudo-Elementos - Exemplo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 51
Observação sobre Pseudo-Elementos
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 52
Cascade, Especificidade e Herança
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 53
Ordem das Regras
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 54
Ordem das Regras - Cascade
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 55
Especificidade
Seletor de Elemento
Código Inline
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 56
Especificidade das Regras
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 57
Herança
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 58
Design Responsivo
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 60
Meta Tag Viewport
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 61
Utilizando a Meta Tag Viewport
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 62
Utilizando a Meta Tag Viewport
Página sem a meta tag viewport Página com a meta tag viewport
(acessada pelo smartphone) (acessada pelo smartphone)
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 63
Introdução à Media Queries
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 64
Introdução à Media Queries
/* Código CSS */
(min-width: 400px)
} (max-width: 900px)
(min-width: 400px) and (max-width: 900px)
(400px <= width <= 900px)
(orientation: portrait)
(orientation: landscape)
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 65
Introdução à Media Queries
O corpo da página
ocupará 95% da largura
quando a largura da
viewport for menor ou
igual a 600px.
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 66
Introdução à Media Queries
O espaçamento entre
linhas e o tamanho da
fonte serão reduzidos
quando o documento
estiver em modo de
impressão na
orientação retrato
(Ctrl-P)
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 67
Media Query com Lista de Expressões
▪ É possível combinar uma lista de media queries separando as
expressões com vírgula
▪ O código CSS será avaliado caso pelo menos uma das expressões seja
verdadeira
O cor de fundo será cinza caso a mídia seja do tipo "tela" com orientação
"horizontal" ou caso seja do tipo tela com largura mínima de 900px
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 68
Validação do Código CSS
Programação para Internet 3 Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 69
CSS e Cache do Navegador
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 70
Referências
▪ www.w3.org/Style/CSS/
▪ developer.mozilla.org/en-US/docs/Web/CSS
▪ www.w3.org/Style/CSS/learning
▪ HTML and CSS: Design and Build Websites, Jon Duckett.
Programação para Internet Prof. Dr. Daniel A. Furtado - Proibida cópia, apropriação ou uso sem autorização de qualquer parte deste material - Lei nº 9 610/98 71