Atenção
Você precisa estar logado para visualizar este conteúdo.
Acesse o sistema
Nesta aula, exploraremos como controlar as dimensões, ou seja, a altura e a largura dos elementos HTML usando CSS.
Altura (Height): Refere-se à medida vertical de um elemento, de cima para baixo.
Largura (Width): Refere-se à medida horizontal de um elemento, da esquerda para a direita.
height e widthEnsinamento: São usadas para definir explicitamente a altura e a largura da área de conteúdo de um elemento HTML.
Importante: Essas propriedades não incluem padding (preenchimento interno), border (borda) ou margin (margem) por padrão. Elas definem apenas o espaço para o conteúdo real.
height e width:auto: Valor padrão. O navegador calcula a altura/largura com base no conteúdo do elemento.length (Comprimento): Define a altura/largura usando unidades fixas ou relativas (ex: px para pixels, cm para centímetros, em, rem).% (Porcentagem): Define a altura/largura como uma porcentagem do tamanho do bloco que contém o elemento (elemento pai).initial: Define a propriedade para seu valor padrão (auto).inherit: O elemento herda o valor height ou width de seu elemento pai.Exemplo Prático (height, width):
Código: p { height: 200px; width: 50%; }
Ensinamento: Define a altura de todos os parágrafos (<p>) para 200 pixels e a largura para 50% da largura do elemento pai que os contém.
max-widthEnsinamento: Define a largura máxima que um elemento pode ter. Impede que o elemento se torne mais largo que o valor especificado, mesmo que a propriedade width seja maior ou o conteúdo precise de mais espaço.
Comportamento: Se o conteúdo for menor, max-width não tem efeito. Se o conteúdo for maior, ele pode ajustar a altura ou transbordar (dependendo de outras propriedades como overflow).
Prioridade: max-width sobrescreve a propriedade width.
Valores: length, %, none (sem limite máximo – padrão), initial, inherit.
Uso: Muito útil para design responsivo, garantindo que elementos não fiquem excessivamente largos em telas grandes e evitando barras de rolagem horizontais indesejadas em telas pequenas.
min-widthEnsinamento: Define a largura mínima que um elemento pode ter. Impede que o elemento se torne mais estreito que o valor especificado, mesmo que a propriedade width seja menor ou o conteúdo precise de menos espaço.
Comportamento: Se o conteúdo for maior, min-width não tem efeito.
Prioridade: min-width sobrescreve a propriedade width.
Valores: length, %, initial (valor padrão é 0), inherit.
max-heightEnsinamento: Define a altura máxima que um elemento pode ter. Impede que o elemento se torne mais alto que o valor especificado.
Comportamento: Se o conteúdo for maior que max-height, ele transbordará (overflow). A propriedade overflow controla como esse transbordamento é tratado. Se o conteúdo for menor, max-height não tem efeito.
Prioridade: max-height sobrescreve a propriedade height.
Valores: length, %, none (sem limite máximo – padrão), initial, inherit.
min-heightEnsinamento: Define a altura mínima que um elemento pode ter. Impede que o elemento se torne mais baixo que o valor especificado.
Comportamento: Se o conteúdo for maior, min-height não tem efeito.
Prioridade: min-height sobrescreve a propriedade height.
Valores: length, %, initial (valor padrão é 0), inherit.
overflow (Relacionada a max-height e max-width)Ensinamento: Especifica o que acontece quando o conteúdo de um elemento é maior que sua caixa (definida por height/width ou limitada por max-height/max-width). Funciona melhor em elementos de bloco com altura definida.
visible (Padrão): O conteúdo transborda e é renderizado fora da caixa do elemento.hidden: O conteúdo que transborda é cortado (escondido). Não há barra de rolagem.clip: Semelhante a hidden, mas proíbe qualquer tipo de rolagem (programática ou do usuário).scroll: O conteúdo que transborda é cortado, mas barras de rolagem (horizontal e vertical) são adicionadas para permitir a visualização do restante, mesmo que não sejam necessárias.auto: Barras de rolagem são adicionadas apenas se o conteúdo transbordar.initial: Define como visible.inherit: Herda o comportamento do elemento pai.Nesta aula, vamos nos concentrar no Preenchimento (Padding), um componente essencial do Box Model que controla o espaçamento interno dos elementos.
Padding é o espaço interno de um elemento HTML, localizado entre o conteúdo do elemento (texto, imagem, etc.) e sua borda.
Analogia: Imagine uma caixa (o elemento). O padding é como um enchimento ou acolchoamento dentro dessa caixa, empurrando o conteúdo para longe das paredes da caixa (a borda).
Diferença de Margin: Enquanto a margin cria espaço fora da borda do elemento (afastando-o de outros elementos), o padding cria espaço dentro da borda.
É possível controlar o padding de cada lado do elemento separadamente:
padding-top: Define o preenchimento na parte superior.padding-right: Define o preenchimento no lado direito.padding-bottom: Define o preenchimento na parte inferior.padding-left: Define o preenchimento no lado esquerdo.As propriedades de padding aceitam os seguintes valores:
length: Um valor fixo com unidade (ex: px para pixels, pt para pontos, cm para centímetros, em, rem). Ex: padding-top: 10px;.percent (%): Um valor percentual relativo à largura do elemento pai (container). Ex: padding-left: 5%;.inherit: O elemento herda o valor de padding do seu elemento pai.Importante: Padding não aceita valores negativos.
padding)Permite definir o padding para todos os lados em uma única declaração, economizando código. O número de valores fornecidos determina como eles são aplicados:
padding: 5px 10px 15px 20px; (Aplica 5px no topo, 10px na direita, 15px na base, 20px na esquerda – sentido horário).padding: 5px 10px 15px; (Aplica 5px no topo, 10px na direita e esquerda, 15px na base).padding: 5px 10px; (Aplica 5px no topo e base, 10px na direita e esquerda).padding: 10px; (Aplica 10px em todos os quatro lados).width)Por padrão, quando você define uma largura (width) para um elemento e adiciona padding, o padding é somado à largura total visível do elemento.
Exemplo: Um elemento com width: 100px; e padding: 10px; terá uma largura visível total de 120px (100px do conteúdo + 10px de padding esquerdo + 10px de padding direito). Isso pode “quebrar” layouts.
box-sizing: border-box;:Propriedade: box-sizing controla como a largura e altura totais de um elemento são calculadas.
Valor border-box: Ao definir box-sizing: border-box;, você instrui o navegador a incluir o padding (e a border) dentro da largura (width) e altura (height) especificadas para o elemento.
Resultado: Usando o exemplo anterior, com width: 100px; padding: 10px; box-sizing: border-box;, a largura total visível do elemento permanecerá 100px. O espaço para o conteúdo interno será reduzido para acomodar os 10px de padding em cada lado. Isso facilita a criação de layouts previsíveis.
Nesta aula, vamos explorar as Margens (Margin) no CSS. As margens são essenciais para criar o espaçamento externo dos elementos, separando-os de seus vizinhos e de suas bordas.
Recomendado: É a parte mais externa do Modelo de Caixa CSS, ficando fora do preenchimento (padding) e da borda (border). É recomendado revisar vídeos anteriores sobre Box Model e Bordas.
Margens em CSS definem o espaço ao redor de um elemento, fora de qualquer borda definida.
Analogia: Pense nas margens de um documento do Microsoft Word – o espaço em branco entre o conteúdo e a borda da página.
Relação com o Box Model: Margens são a parte mais externa do Box Model CSS, ficando fora do preenchimento (padding) e da borda (border).
É possível definir a margem para cada lado de um elemento individualmente usando propriedades específicas:
margin-top: Define a margem superior.margin-right: Define a margem direita.margin-bottom: Define a margem inferior.margin-left: Define a margem esquerda.Exemplo: Demonstração de como usar essas propriedades com valores em pixels (px) para criar espaçamento.
As propriedades de margem podem aceitar diferentes tipos de valores:
auto: O navegador calcula a margem automaticamente.length: Um valor de comprimento fixo (ex: px, pt, cm).percent (%): Uma porcentagem relativa à largura do elemento contêiner.inherit: O elemento herda o valor da margem do seu elemento pai.marginPara simplificar, a propriedade margin pode ser usada para definir todas as quatro margens (ou menos) em uma única linha. A ordem dos valores importa:
margin: top right bottom left; (sentido horário). Ex: margin: 5px 10px 15px 20px;margin: top right/left bottom; Ex: margin: 5px 10px 15px; (10px aplica-se à direita e esquerda).margin: top/bottom right/left; Ex: margin: 5px 10px; (5px aplica-se ao topo e base, 10px à direita e esquerda).margin: all; Ex: margin: 5px; (5px aplica-se a todos os quatro lados).Observação: Os valores são separados por espaços.
São permitidos e podem fazer com que os elementos se aproximem ou até se sobreponham aos seus vizinhos.
autoUsado principalmente para centralizar horizontalmente elementos de bloco que tenham uma width (largura) definida. O navegador distribui o espaço restante igualmente nas margens esquerda e direita. Ex: width: 125px; margin: auto;
inheritFaz com que um elemento use o mesmo valor de margem que foi definido em seu elemento pai. Ex: Se um <div> pai tem margin: 5px;, um <p> filho com margin: inherit; também terá margens de 5px.
Um comportamento específico do CSS onde as margens verticais (top e bottom) de elementos de bloco adjacentes se fundem (colapsam).
Regra: A margem resultante entre eles não é a soma, mas sim o maior dos dois valores de margem que colidiram.
Exemplo: Se um <h1> tem margin-bottom: 50px; e o <p> seguinte tem margin-top: 20px;, o espaço entre eles será de 50px (o maior valor), não 70px.
Importante: Isso só acontece com margens top e bottom, não com left e right.
Elemento de Bloco: Elementos que, por padrão, ocupam toda a largura disponível e começam em uma nova linha (ex: <div>, <p>, <h1>).