"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como dominar o modelo de caixa CSS para layouts de sites perfeitos (+ exemplos de Codepen)

Como dominar o modelo de caixa CSS para layouts de sites perfeitos (+ exemplos de Codepen)

Publicado em 2024-11-09
Navegar:333

How to Master the CSS Box Model for Perfect Website Layouts (  Codepen examples)

Ei, gente incrível! Bem-vindo de volta ao meu blog. ? Hoje, estamos nos aprofundando no CSS Box Model, desmistificando como o tamanho de cada elemento é determinado e como você pode usar esse conhecimento para criar designs precisos, modernos e limpos (exemplos reais no final deste artigo).

Introdução ao modelo de caixa

O CSS Box Model é fundamental para web design, ditando como cada elemento HTML ocupa espaço em uma página web.

Detalhamento detalhado dos componentes do modelo de caixa

  1. Conteúdo : Este é o conteúdo real da caixa, onde ficam textos, imagens e outros elementos. Seu tamanho é definido pelas propriedades de largura e altura.

  2. Padding : Este é o espaço ao redor do conteúdo, dentro da borda. O preenchimento é transparente, a menos que tenha estilo diferente.

  3. Border : envolve o preenchimento e o conteúdo. Ele pode ser estilizado com largura, estilo (por exemplo, sólido, tracejado) e cor.

  4. Margem : Este é o espaço fora da fronteira. Também é transparente e afeta o espaçamento entre os elementos

O modelo de caixa em ação:

.example {
    width: 200px; /* Content width */
    height: 100px;
    padding: 10px; /* Adds 20px to both width and height */
    border: 5px solid #000; /* Adds 10px to both width and height */
    margin: 20px; /* Does not contribute to the element's dimensions but affects layout */
}

  • Cálculo da largura total: 200px (conteúdo) 20px (preenchimento) 10px (borda) = 230px

  • Cálculo da altura total : 100px 20px 10px = 130px

Equívocos comuns

  • Largura/altura afetam apenas o conteúdo: muitos presumem que a configuração de largura ou altura define o tamanho total, mas é apenas a área de conteúdo.

  • Box Sizing : Sem box-sizing: border-box, adicionar preenchimento ou borda aumenta um elemento além de sua largura/altura definida.

Visualizando o Modelo da Caixa: Imagine que você tem uma caixa com as dimensões acima. Aqui está uma análise visual:

.box {
    background-color: #f0f0f0;
    width: 300px;
    height: 150px;
    padding: 20px;
    border: 10px solid #000;
    margin: 30px;
}
  • Área de conteúdo : 300x150px (a área cinza)

  • Padding : Adiciona 20px ao redor, aumentando o tamanho para 340x190px

  • Border : envolve o preenchimento, fazendo com que o tamanho final da caixa seja 360x210px

  • Margin : cria espaço ao redor da borda, mas não conta diretamente para as dimensões do elemento.

Técnicas avançadas de modelo de caixa

Propriedade de dimensionamento de caixa : Usando o dimensionamento de caixa: border-box torna o preenchimento e a borda incluídos na largura/altura especificada, simplificando o design:

* { box-sizing: border-box;}

Esta declaração será aplicada a todos os elementos, tornando os cálculos de tamanho mais intuitivos.

  • Valores percentuais : quando usados ​​com preenchimento ou margens, as porcentagens são calculadas em relação à largura do elemento que o contém.

  • Margens automáticas : Configuração da margem: o automático pode centralizar os elementos horizontalmente (ou verticalmente se o flexbox for usado).

Considerações sobre modelo de caixa e layout

  • Floats : elementos com float podem levar a comportamentos inesperados onde as margens colapsam ou se sobrepõem.

  • Flexbox e Grid : Esses métodos de layout modernos lidam com as margens de maneira diferente. Por exemplo, as margens não são recolhidas em contêineres flexíveis ou células de grade como aconteceria com elementos em nível de bloco.

  • Elementos sobrepostos : compreender o índice z e o posicionamento ajuda a gerenciar a profundidade quando os elementos se sobrepõem.

Dicas para uso eficaz do modelo de caixa

  • Design para consistência : use dimensionamento de caixa consistente em todo o seu projeto para evitar erros de cálculo de tamanho.

  • Design responsivo : lembre-se de como o preenchimento e as margens são dimensionados. Os valores percentuais de preenchimento podem ajudar a manter as proporções em diferentes tamanhos de tela.

  • Depuração : se um elemento parecer maior ou menor do que o esperado, verifique suas configurações de preenchimento, borda e margem.

  • Uso de contorno : ao contrário das bordas, os contornos não afetam as dimensões do elemento, o que pode ser útil em determinados designs de IU.

Aplicação no mundo real

1. Layout de cartão responsivo / verifique o código no Codepen.

Explicação:

  • Box-Sizing : Configurando o tamanho da caixa: border-box; garante que o preenchimento não aumente a largura e a altura totais, o que simplifica o design responsivo.

  • Card Layout : A classe .card define um contêiner com largura fixa, cantos arredondados e uma sombra para profundidade.

  • Imagem do cartão : atua como um espaço reservado para uma imagem com dimensões definidas por altura.

  • Conteúdo do cartão : aqui, o preenchimento é usado para espaçar o conteúdo da borda. É aqui que você vê o modelo de caixa em ação; o preenchimento aumenta a área clicável dentro do cartão, mas não aumenta a largura declarada do cartão.

  • Margin : Usado sutilmente em .card-title e .card-text para espaçar elementos dentro do cartão.

  • Botão : estilizado para se parecer com uma frase de chamariz típica, com efeitos de foco demonstrando transições CSS.

2.Lista simples de postagens de blog / verifique o código no Codepen.

Deixe-me saber se precisar de alguma explicação sobre este exemplo! Ficarei feliz em ajudá-lo nos comentários!

Conclusão

O CSS Box Model, embora simples em teoria, tem camadas de complexidade que afetam a forma como projetamos e depuramos layouts da web. Ao compreender e dominar esse conceito, você estará mais bem equipado para criar designs limpos, previsíveis e responsivos.


? Olá, sou Eleftheria, Gerente de comunidade, desenvolvedora, palestrante e criadora de conteúdo.

? Se você gostou deste artigo, considere compartilhá-lo.

? Todos os links | X | LinkedIn

Declaração de lançamento Este artigo está reproduzido em: https://dev.to/eleftheriabatsou/how-to-master-the-css-box-model-for-perfect-website-layouts-codepen-examples-4opk?1 Se houver alguma violação , entre em contato com study_golang @163.comdelete
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3