S02 – Atividade de Aprendizagem: Box Model no CSS
Visão Geral
O Box Model (Modelo de Caixa) do CSS é uma caixa que envolve cada elemento. De dentro para fora, o modelo define como o conteúdo, o padding (ou preenchimento), a borda e a margem são renderizados.
Preparação
Assista ao seguinte vídeo:
Vídeo: ▶️ Modelo de Caixa (Box Model)
Aqui está uma regra CSS para elementos div que define a largura e o box model. O conteúdo tem 400 pixels de largura e a altura é determinada pelo conteúdo real (mas não mostrado), seja ele qual for.
div {
width: 400px;
margin: 10px;
border: 1px solid #000000;
padding: 15px;
}
- content: É aqui onde o texto e as imagens aparecem.
- padding: Esta é a área ao redor do conteúdo que separa o conteúdo da borda.
- border: A borda contorna o padding e separa o padding da margem.
- margin: Esta é a área fora da borda e pode se estender além dos caracteres físicos do box model.
Agora aplique a propriedade box-sizing de border-box a este mesmo exemplo.
Observe a diferença
nas dimensões do conteúdo (área sombreada em azul):
div {
box-sizing: border-box;
width: 400px;
margin: 10px;
border: 1px solid #000000;
padding: 15px;
}
Notação Abreviada do CSS
A notação abreviada do CSS geralmente é considerada a melhor prática para concisão, legibilidade e desempenho. No entanto, a notação por extenso tem suas utilidades e pode ser mais apropriada em certas situações em que a especificidade é necessária.
| Resumo: Declarações Abreviadas no CSS usando a propriedade margin | |
|---|---|
| Por extenso | Abreviada |
|
|
|
As margens direita e esquerda
são as mesmas, com 20 pixels.
|
|
As partes superior e inferior são
iguais (10 pixels) e as margens direita e esquerda também (20 pixels).
|
|
Todos os lados da margem têm 10
pixels.
|
| Abreviação de Borda Comum |
|---|
Isso aplica uma borda de 1 pixel ao redor do elemento com uma linha sólida e uma cor que corresponde ao fundo do elemento contêiner/pai. A cor está definida como 10% de opacidade. |
Instruções da Atividade
Arquivos
- Na sua pasta semana02, abra o arquivo chamado box-model.html.
- Na subpasta estilos dentro da pasta semana02, abra o arquivo CSS chamado box-model.css.
HTML
- No arquivo HTML box-model.html, crie um link para o arquivo CSS
box-model.css, usando a tag
<link>.
Certifique-se de que esse elemento <link> esteja localizado na seção<head>.Avalie Seu Conhecimento
<link rel="stylesheet" href="estilos/box-model.css"> - Abra o arquivo box-model.html no Live/Five Server para visualizar as alterações conforme elas
ocorrem nesta atividade.
Neste ponto, o HTML é renderizado conforme mostrado aqui:
Captura de tela do arquivo HTML com box model renderizado em um navegador
CSS
- Use os seletores CSS para estilizar os elementos HTML, de modo que fiquem iguais ao estilo mostrado nesta
imagem:
Captura de Tela da Solução de Exemplo - Escreva declarações CSS para estilizar os elementos HTML no arquivo box-model.css.
Observe que as regras CSS foram iniciadas com os seletores apropriados.- classe
callout - elemento
imgdentro da classecallout - elemento
blockquote - elemento
cite
Elemento Declarações CSS Obrigatórias classe callout maximum width, margin, border, padding, background color e text color img position (float), margin, border, padding, background color, width, height blockquote margin cite display, top border, top padding, text alignment, size of font - classe
- Compare seu trabalho com a solução de exemplo fornecida, chamada box-model-solucao.html.
Você reparou nos elementos semânticos HTML usados para envolver a escritura e a referência à escritura?
A escritura foi encapsulada com um elemento
<blockquote>em vez de um elemento genérico<div>ou<p>A referência da escritura foi delimitada por um elemento
<cite>.Não há nada de especial nesses elementos, exceto seus nomes semânticos e, talvez, o estilo padrão do navegador. No restante, eles se comportam e se parecem com qualquer outro elemento de bloco.
Não se preocupe se você não usou essas informações no seu design. Refatorar o trabalho à medida que você descobre novos elementos e métodos faz parte do processo geral de desenvolvimento.