Os elementos HTML são organizados em caixas, que são retângulos com altura, largura, margens, bordas e preenchimento. O modelo de caixas é a forma como o navegador organiza e exibe os elementos na tela.
As caixas são compostas por cinco partes principais: conteúdo, padding, border, outline e margin. Cada uma dessas partes pode ser estilizada com CSS para criar diferentes efeitos visuais.
As propriedades de estilo que afetam as caixas são:
width
Width é a largura da caixa, ou melhor a largura interna da caixa, ou seja, a largura do local que abrigará todo o conteúdo. existem algumas forma de definirmos o width:
- auto: A largura da caixa é determinada pelo seu conteúdo.
- valor fixo: Define a largura da caixa em pixels, centímetros, porcentagem ou outra unidade de medida.
- porcentagem: Define a largura da caixa em relação à largura do contêiner pai.
width: auto;
width: 100px;
width: 80%;
height
Height é a altura da caixa, ou melhor a altura interna da caixa, ou seja, a altura do local que abrigará todo o conteúdo. existem algumas forma de definirmos o height:
- auto: A altura da caixa é determinada pelo seu conteúdo.
- valor fixo: Define a altura da caixa em pixels, centímetros, porcentagem ou outra unidade de medida.
- porcentagem: Define a altura da caixa em relação à altura do contêiner pai.
height: auto;
height: 100px;
height: 80%;
padding
Padding é o espaço entre o conteúdo da caixa e a borda. Ele é usado para adicionar espaço interno à caixa. O padding pode ser definido para cada lado da caixa (top, right, bottom, left) ou para todos os lados ao mesmo tempo.
Exemplo de código:
padding: 10px;
Isso significa que todos os lados da caixa terão 10px de padding. Se quisermos que cada lado tenha um valor diferente, podemos fazer o seguinte:
padding-top: 10px;
(modifica o padding superior)
padding-right: 20px;
(modifica o padding direito)
padding-bottom: 30px;
(modifica o padding inferior)
padding-left: 40px;
(modifica o padding esquerdo)
border
Border é a borda da caixa. Ela é usada para adicionar uma borda ao redor da caixa. A borda pode ser definida para cada lado da caixa (top, right, bottom, left) ou para todos os lados ao mesmo tempo.
Exemplo de código:
border-width: 1px; border-style: solid; border-color: black;
Isso significa que todos os lados da caixa terão uma borda de 1px de largura, sólida e preta. Se quisermos que cada lado tenha um valor diferente, podemos fazer o seguinte:
border-top-width: 1px; border-top-style: solid; border-top-color: black;
(modifica a borda superior)
border-right-width: 2px; border-right-style: solid; border-right-color: black;
(modifica a borda direita)
border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: black;
(modifica a borda inferior)
border-left-width: 4px; border-left-style: solid; border-left-color: black;
(modifica a borda esquerda)
Tipos de Bordas
Além da borda sólida, existem outros tipos de bordas que podem ser aplicadas às caixas. Aqui estão alguns exemplos:
- Dashed: Uma borda tracejada.
- Dotted: Uma borda pontilhada.
- Double: Uma borda dupla.
- Groove: Uma borda com efeito de sulco.
- Ridge: Uma borda com efeito de crista.
- Inset: Uma borda com efeito de inserção.
- Outset: Uma borda com efeito de projeção.
border-style: dashed;
border-style: dotted;
border-style: double;
border-style: groove;
border-style: ridge;
border-style: inset;
border-style: outset;
Você pode experimentar esses diferentes tipos de bordas para ver como eles afetam a aparência das caixas.
outline
Outline é uma linha que é desenhada ao redor de um elemento, fora da borda. Ela é usada para destacar um elemento sem afetar o layout da página. Diferente da borda, o outline não ocupa espaço e não afeta o tamanho ou a posição do elemento.
Exemplo de código:
outline: 2px solid red;
Isso significa que todos os lados do elemento terão um outline de 2px de largura, sólido e vermelho. Se quisermos que cada lado tenha um valor diferente, podemos fazer o seguinte:
outline-width: 2px;
(modifica a largura do outline)
outline-style: dashed;
(modifica o estilo do outline)
outline-color: blue;
(modifica a cor do outline)
Tipos de Outline
Assim como a borda, o outline também pode ter diferentes estilos. Aqui estão alguns exemplos:
- Dashed: Um outline tracejado.
- Dotted: Um outline pontilhado.
- Double: Um outline duplo.
- Groove: Um outline com efeito de sulco.
- Ridge: Um outline com efeito de crista.
- Inset: Um outline com efeito de inserção.
- Outset: Um outline com efeito de projeção.
outline: 2px dashed blue;
outline: 2px dotted green;
outline: 4px double purple;
outline: 4px groove orange;
outline: 4px ridge pink;
outline: 4px inset brown;
outline: 4px outset black;
Você pode experimentar esses diferentes tipos de outline para ver como eles afetam a aparência dos elementos.
margin
Margin é o espaço entre a caixa e os elementos vizinhos. Ela é usada para adicionar espaço externo à caixa. A margem pode ser definida para cada lado da caixa (top, right, bottom, left) ou para todos os lados ao mesmo tempo.
Exemplo de código:
margin: 10px;
Isso significa que todos os lados da caixa terão 10px de margem. Se quisermos que cada lado tenha um valor diferente, podemos fazer o seguinte:
margin-top: 10px;
(modifica a margem superior)
margin-right: 20px;
(modifica a margem direita)
margin-bottom: 30px;
(modifica a margem inferior)
margin-left: 40px;
(modifica a margem esquerda)
Tipos de Margem
Assim como padding, a margem também pode ter diferentes estilos. Aqui estão alguns exemplos:
- Valor fixo: Define a margem usando as unidades de medidas vista em tipografia Unidades de Medida no CSS3.
- Porcentagem: Define a margem em relação à largura do contêiner pai.
margin: 10px;
margin: 10%;
margin: auto;
A propriedade margin: auto;
é usada para centralizar um elemento horizontalmente dentro do seu contêiner. Para que isso funcione, o elemento deve ter uma largura definida. Quando aplicamos margin: auto;
, o navegador calcula automaticamente as margens esquerda e direita para que o elemento fique centralizado.
Exemplo de código:
<style> .centered-box { width: 50%; margin: auto; background-color: lightblue; } </style> <div class="centered-box"> Este é um exemplo de uma caixa centralizada. </div>
No exemplo acima, a div
com a classe centered-box
terá uma largura de 50% do contêiner pai e será centralizada horizontalmente devido ao uso de margin: auto;
.