Dimensionamento da Caixa
Parte da seção Estilização com CSS do Journey de HTML da Coddy. Lição 39 de 76.
Em CSS, box-sizing é uma propriedade que determina como a largura e a altura totais de um elemento são calculadas. Por padrão, as propriedades width e height incluem apenas o tamanho do conteúdo e não levam em consideração o preenchimento, as bordas ou as margens. No entanto, usando a propriedade box-sizing, você pode alterar esse comportamento e fazer com que as propriedades width e height incluam também os tamanhos do preenchimento e das bordas.
Isso pode simplificar os cálculos de layout e evitar problemas inesperados de dimensionamento.
Veja a sintaxe básica para usar a propriedade box-sizing:
selector {
box-sizing: value;
}value: O comportamento desejado de dimensionamento da caixa, que pode ser um dos seguintes:
content-box: Este é o valor padrão. As propriedadeswidtheheightincluem apenas o tamanho do conteúdo. O preenchimento, as bordas e as margens são adicionados fora da largura e da altura especificadas.
border-box: As propriedadeswidtheheightincluem os tamanhos do conteúdo, do preenchimento e da borda. As margens ainda são adicionadas fora do elemento.
Por exemplo:
div {
width: 300px;
height: 200px;
padding: 20px;
border: 5px solid black;
box-sizing: content-box; /* Default behavior */
}
.container {
width: 400px;
height: 300px;
padding: 30px;
border: 10px solid red;
box-sizing: border-box;
}Neste exemplo, o elemento <div> tem um valor box-sizing de content-box. Isso significa que a largura real renderizada do <div> será 300px (conteúdo) + 40px (preenchimento esquerdo e direito) + 10px (borda esquerda e direita) = 350px. A altura será calculada de forma semelhante.
Por outro lado, o elemento com a classe container tem um valor de box-sizing igual a border-box. Nesse caso, a width especificada de 400px incluirá o content, o padding e a border. A área real de content diminuirá para acomodar o padding e a border, resultando em uma largura de content de 400px - 60px (padding esquerdo e direito) - 20px (border esquerda e direita) = 320px. A height será calculada de forma semelhante.
Desafio
FácilVocê recebeu um documento HTML com duas divisões (<div>), cada uma com uma class diferente. Sua tarefa é usar a propriedade box-sizing para controlar como a largura e a altura desses elementos são calculadas. Siga as etapas abaixo:
- Escreva uma regra CSS que tenha como alvo o elemento
<div>com aclass<strong>content-box-div</strong>. Defina awidthcomo300px, aheightcomo200px, opaddingcomo20px, abordercomo5px solid bluee obox-sizingcomocontent-box. - Escreva uma regra CSS que tenha como alvo o elemento
<div>com aclass<strong>border-box-div</strong>. Defina awidthcomo300px, aheightcomo200px, opaddingcomo20px, abordercomo5px solid rede obox-sizingcomoborder-box.
Experimente você mesmo
<html>
<head>
<title>Box Sizing</title>
<style>
/* Write CSS rules here */
</style>
</head>
<body>
<div class="content-box-div">This is a div with content-box.</div>
<div class="border-box-div">This is a div with border-box.</div>
</body>
</html>Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Estilização com CSS
4Fundamentos de Texto
Cor do TextoFamília da FonteTamanho da FontePeso da FonteAlinhamento do TextoDecoração do TextoDesafio de Revisão nº 1Desafio de Revisão nº 27Modelo de Caixa — Parte 1
O que é o Modelo de Caixa?PreenchimentoMargensBordasLargura e AlturaDesafio de Revisão8Modelo de Caixa — Parte 2
Dimensionamento da CaixaRaio da BordaTransbordamentoSombra da CaixaDesafio de Revisão3Seletores Básicos
Introdução aos SeletoresSeletor de TipoSeletor de ClasseSeletor de IDSeletores de GrupoSeletor UniversalDesafio de Seleção9Flex Box
O que é uma Flex Box?Direção da Flex BoxJustificar conteúdoAlinhar itensO centro perfeitoDesafio da Flex Box12Fundamentos do Design Responsivo
O que é Design Responsivo?Meta tag viewportLayouts fluidosUnidades de viewportFundamentos das Media QueriesImagens flexíveisPratique por conta própria: Playground de Web