Article image
Felipe Abrantes
Felipe Abrantes24/02/2023 12:03
Compartilhe

CSS Box Model

  • #HTML
  • #CSS

CSS: explicando o Box Model

Olá pessoal, hoje vou falar sobre CSS, mais precisamente sobre o conceito de Box Model.

Quando se cria um elemento no HTML seja ele uma div, h1, p ou qualquer outro, por padrão já vem com uma altura e largura, ou seja, o height e width, mesmo que você não defina esses valores, por padrão todos elementos HTML já tem essas propriedades.

Por exemplo, vamos criar uma div com um elemento de parágrafo dentro:

<div class="principal"> <!--Criação da div com uma classe chamada de principal--> 
      <p>Olá, mundo!</p> <!--Criação do parágrafo--> 
  </div>

Vamos adicionar a propriedade cor de fundo ao parágrafo para ele se destacar.

p {
  background-color: blue;
}

Bom se voce executar irá ver que tem uma div com um texto dentro e a cor de fundo desse texto estará em azul.

Podemos ver um elemento com o conteúdo todo exprimido no meio.

Então vamos fazer alguns testes para tentar melhorar isso.

Primeiro vamos adicionar uma borda a nosso elemento p.

p {
  background-color: blue;
  border: solid 1px red;
}

Percebemos que no entorno do elemento p temos uma borda sólida em vermelho de 1px.

Agora se quisermos por um espaço entre o elemento p e a borda, utilizamos a propriedade padding e inserimos um valor nela, esse valor será o tamanho do espaço entre o elemento e a borda.

Inserindo a propriedade e seu valor no CSS:

p {
  background-color: blue;
  border: solid 1px red;
  padding: 5px;
}

Podemos ver que foi adicionado um espaço entre o texto e a borda dele de 5px. Uma observação é que esse espaço é criado dentro do elemento p, ou seja, ele empurra o conteúdo para dentro, diferente do margin que é o que veremos a seguir.

Depois temos a propriedade margin que é a margem do elemento, como dito antes o padding empurra o conteúdo para dentro, já o margin é um espaçamento externo, ou seja, o elemento p vai se afastar de um outro elemento que esteja dentro da mesma div.

Vamos de exemplos:

Para ficar melhor de enxergarmos vou criar um outro parágrafo.

  <div class="principal"> <!--Criação da div com uma classe chamada de principal--> 
      <p>Olá, mundo!</p> <!--Criação do parágrafo--> 
      <p class="segundo">Tchau, mundo!</p> <!--Criação segundo parágrafo-->
  </div>

Podemos ver que por padrão ele já vem com uma margem de 16px no topo e em baixo, são as propriedades margin-top e margin-bottom, e é essa margem que os separam. Caso a gente remova elas esses elementos ficam bem colados um no outro. Vamos ver:

Removendo a margem do elemento p:

p {
  background-color: blue;
  border: solid 1px red;
  padding: 5px;
  margin: 0;
}

Agora só executar no navegador e verificar o resultado.

Bom, vimos então que o Box Model é o que vai definir em sua página o espaçamento dos elementos HTML que a página irá conter, para um melhor entendimento podemos imaginar que esses elementos HTML são caixas e essas caixas tem o espaçamento interno que é o padding, contem bordas que é o limite dessa caixa que seria o border e por ultimo a margem margin que é o espaçamento entre essas caixas, ou seja, o espaço entre uma caixa e outra. Espero ter ajudado!

Compartilhe
Comentários (3)
Alex Paleta
Alex Paleta - 24/02/2023 13:53

 excelente artigo.

D

Danielle - 24/02/2023 12:35

Parabéeeens meu amor, ficou demais 👏👏❤

Alex Mota
Alex Mota - 24/02/2023 12:24

Parabéns Felipe, excelente artigo.