Box Model, Display e Posicionamento. 🌓 TRILHA CSS šŸŽØ Etapa 03

Seja muito bem-vindo Ć  Academy Code Christ!



šŸŒ Academy Code Christ estĆ” disponĆ­vel em vĆ”rios idiomas.

Fique Ć  vontade para usar o tradutor na Barra lateral (Sidebar) 
e aprender no seu idioma.

šŸ“š Continue sua jornada de aprendizado



A Academy Code Christ oferece trilhas de aprendizado em diferentes tecnologias. Explore os cursos, acompanhe as aulas e avance em sua jornada de conhecimento.  


šŸ“‹ Menus correspondentes:



šŸ’» Pratique o que vocĆŖ aprende

Para facilitar seu aprendizado, utilize o Code Editor da Mr Digitals, um editor online que permite escrever códigos em HTML, CSS e JavaScript e visualizar os resultados diretamente no navegador.


šŸŽØ Etapa 03 


O que vocĆŖ vai aprender nesta aula?

Nessa aula, vocĆŖ vai aprender o Modelo de Caixa (Box Model)  o conceito mais importante do CSS moderno e aprender como posicionar, alinhar e criar layouts profissionais usando display, position, overflow, z-index, e muito mais.


šŸ‘‰ Box Model, Display e Posicionamento.


🧱 O Que é o Box Model

Todo elemento HTML Ć© tratado pelo CSS como uma caixa retangular.
  Essa caixa Ć© composta de 4 camadas:

+--------------------------+

|           MARGIN          |

|  +----------------------+ |

|  |         BORDER      |  |

|  |  +------------------+ |  |

|  |  |    PADDING    |  |  |

|  |  | +--------------+  |  |  |

|  |  |  | CONTENT |  |  |  |

|  |  |   +-------------+ |  |  |

|  |  +-----------------+  |  |

|  +---------------------+  |

+-------------------------+

šŸ’” Explicando:

Camada                                Função

Content       →    O conteĆŗdo real (texto, imagem, botĆ£o...)

Padding      →    EspaƧo interno entre o conteĆŗdo e a borda

Border         →    A linha que envolve o elemento

Margin         →   EspaƧo externo, separando um elemento do outro

šŸŽØ Box Model na PrĆ”tica

Vamos ver um exemplo prƔtico rƔpido de como cada camada funciona.

šŸ“„ index.html

<div class="caixa">

  <p>Sou uma caixa CSS</p>

</div>

 

šŸ“„ style.css

.caixa {

  background-color: lightblue;

  color: #333;

  width: 300px;

  padding: 20px;

  border: 5px solid #0077ff;

  margin: 30px;

}

 

šŸ’¬ Nesse exemplo:

●     A largura total da caixa nĆ£o serĆ” apenas 300px —
  ela soma: width + padding + border + margin.

Dica Profissional:
  Para que o valor da width inclua padding e borda, use:

* {

  box-sizing: border-box;

⚙️Entendendo o Display

A propriedade display define como o navegador deve exibir o elemento.

Os mais importantes são:

Tipo                                                    Descrição

block  →     Ocupa toda a largura disponĆ­vel; comeƧa em nova linha. (ex: <div>, <p>, <section>)

inline   →   Ocupa apenas o espaƧo do conteĆŗdo; nĆ£o quebra linha. (ex: <span>, <a>, <strong>)

inline-block    →     Mistura dos dois: mantĆ©m em linha, mas aceita largura/margem/padding.

none   →      Esconde totalmente o elemento.

flex       →    Transforma o elemento num contĆŖiner flexĆ­vel (veremos na Aula 7).

grid     →     Transforma o elemento num contĆŖiner de grade (veremos na Aula 8).

šŸŽ¬ Exemplo visual:

<p>Texto normal com <span>um span inline</span> dentro!</p>

<div class="bloco">Sou um elemento block</div>

 

span {

  background: yellow;

  display: inline;

}

 

.bloco {

  background: lightgreen;

  display: block;

  width: 200px;

  padding: 10px;

}

 

šŸ’” inline nĆ£o respeita width/height, mas block sim!

šŸ“ Display Inline-block

O tipo inline-block Ć© muito Ćŗtil para colocar elementos lado a lado — como botƵes, cartƵes ou menus.

<div class="botao">Sim</div>

<div class="botao">NĆ£o</div>

 

.botao {

  display: inline-block;

  background: #0077ff;

  color: white;

  padding: 10px 20px;

  margin: 10px;

  border-radius: 8px;

}

 

🟢 Resultado: os botões ficam lado a lado, mas continuam respeitando largura, altura e padding.

šŸ“ Posicionamento (Position)

A propriedade position define como um elemento serÔ posicionado em relação à pÔgina ou a outros elementos.

⚙️ Tipos principais: Tipo     Descrição

static  →  PadrĆ£o (segue o fluxo normal da pĆ”gina).

relative  →     MantĆ©m posição original, mas pode ser deslocado usando top, left, right, bottom.

absolute  →      Sai do fluxo normal; Ć© posicionado relativamente ao seu elemento pai posicionado.

fixed   →  Fixa o elemento na tela (mesmo rolando a pĆ”gina).

sticky →     Mistura relative e fixed: fica parado atĆ© certa rolagem.

🧩 Exemplo PrÔtico:

<div class="container">

  <div class="box a">A</div>

  <div class="box b">B</div>

  <div class="box c">C</div>

</div>

 

.container {

  position: relative;

  background: #f0f0f0;

  width: 300px;

  height: 200px;

}

 

.box {

  width: 60px;

  height: 60px;

  text-align: center;

  line-height: 60px;

  color: #fff;

  font-weight: bold;

}

 

.a { background: #0077ff; }

.b { background: #ff0077; position: absolute; top: 20px; left: 80px; }

.c { background: #33cc33; }

 

šŸ’” .b fica sobreposta Ć s outras caixas, pois estĆ” position: absolute dentro de um contĆŖiner position: relative.

šŸ“Œ Z-index (Camadas e Profundidade)

Quando elementos se sobrepƵem, o z-index decide qual fica na frente.

.caixa1 {

  position: absolute;

  top: 20px;

  left: 20px;

  background: orange;

  z-index: 2;

}

 

.caixa2 {

  position: absolute;

  top: 40px;

  left: 40px;

  background: purple;

  z-index: 1;

}

 

šŸ‘‰ Aqui, .caixa1 ficarĆ” por cima da .caixa2.

šŸ“˜ Só funciona se o elemento tiver position diferente de static.


šŸ“˜ Para um melhor Aprendizado            šŸŽÆ Pratique com exercĆ­cios, desafios e projetos

šŸ“Ž Exemplo PrĆ”tico: “CartĆ£o com BotƵes Fixos e Layout Posicionado”

šŸ“„ index.html

<!DOCTYPE html>

<html lang="pt-BR">

<head>

  <meta charset="UTF-8">

  <title>Box Model e Posicionamento</title>

  <link rel="stylesheet" href="style.css">

</head>

<body>

  <div class="painel">

<h1>Caixas e PosiƧƵes no CSS</h1>

<p>Aprender o Box Model Ć© entender a alma do design!</p>

<button class="btn">Continuar</button>

  </div>

 

  <div class="botao-flutuante">šŸ’¬</div>

</body>

</html>

 

šŸ“„ style.css

* {

  margin: 0;

  padding: 0;

  box-sizing: border-box;

}

 

body {

  background: linear-gradient(135deg, #a2d2ff, #fcbf49);

  height: 100vh;

  font-family: 'Segoe UI', sans-serif;

}

 

.painel {

  width: 400px;

  background-color: #fff;

  border: 3px solid #0077ff;

  border-radius: 12px;

  padding: 20px;

  margin: 60px auto;

  text-align: center;

  box-shadow: 0 5px 15px rgba(0,0,0,0.2);

}

 

h1 {

  color: #0077ff;

  margin-bottom: 10px;

}

 

p {

  color: #333;

  margin-bottom: 20px;

}

 

.btn {

  background: #0077ff;

  color: #fff;

  border: none;

  padding: 10px 20px;

  border-radius: 8px;

  cursor: pointer;

  transition: transform 0.2s;

}

 

.btn:hover {

  transform: scale(1.1);

}

 

/* Botão fixo */

.botao-flutuante {

  position: fixed;

  right: 30px;

  bottom: 30px;

  width: 50px;

  height: 50px;

  background: #ff0077;

  color: white;

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 24px;

  cursor: pointer;

  box-shadow: 0 3px 12px rgba(0,0,0,0.3);

  transition: transform 0.3s;

}

 

.botao-flutuante:hover {

  transform: scale(1.2);

}

 

šŸ’„ Pronto!  VocĆŖ tem:

●     Um painel centralizado com bordas, margens e padding bem definidos;

●     Um botĆ£o fixo no canto inferior direito (simulando o botĆ£o do WhatsApp ou “Fale Conosco”);

●     E todos os elementos perfeitamente organizados pelo Box Model e posicionamento CSS.

🧠 O Que Você Aprendeu Hoje


  ✔️ Como funciona o Box Model (Content, Padding, Border, Margin);

  ✔️ DiferenƧas entre display: block, inline, inline-block;

  ✔️ Como usar position (relative, absolute, fixed, sticky);

  ✔️ O que Ć© z-index e como controlar camadas;

  ✔️ Criação de layout prĆ”tico com elementos posicionados e botĆ£o flutuante. 



šŸ“š Continue aprendendo CSS:


šŸŽØ Etapa 1 šŸ‘‰  Introdução ao CSS

šŸŽØ Etapa 3 šŸ‘‰ VocĆŖ estĆ” nessa Etapa

šŸŽØ Etapa 4 šŸ‘‰ Tipografia, Cores e Fundos AvanƧados

šŸŽØ Etapa 5 šŸ‘‰ Bordas, Sombreamentos e Efeitos Visuais

šŸŽØ Etapa 6 šŸ‘‰ Pseudo-Classes e Pseudo-Elementos

šŸŽØ Etapa 7 šŸ‘‰ Flexbox: Layouts FlexĆ­veis e Responsivos

šŸŽØ Etapa 8 šŸ‘‰ CSS Grid: Layouts de Grade AvanƧados

šŸŽØ Etapa 9 šŸ‘‰ Responsividade e Media Queries

šŸŽØ Etapa 10 šŸ‘‰ TransiƧƵes e AnimaƧƵes no CSS

šŸŽØ Etapa 11 šŸ‘‰ Gradientes, Sombras e Estilo TranslĆŗcido

šŸŽØ Etapa 12 šŸ‘‰ VariĆ”veis e FunƧƵes (CSS Custom Properties)

šŸŽØ Etapa 13 šŸ‘‰ Layout Responsivo Completo com Grid, Flexbox e Media Queries

šŸŽØ Etapa 14 šŸ‘‰ Boas PrĆ”ticas, e Estrutura Profissional de Projeto CSS

šŸŽØ Etapa 15 šŸ‘‰ Performance, Otimização e Boas PrĆ”ticas AvanƧadas de CSS




Este conteĆŗdo faz parte do Academy Code Christ. 

Um projeto criado para ajudar jovens e iniciantes a aprender programação do zero, de forma simples e gratuita.

Nossa missão é compartilhar conhecimento e incentivar mais pessoas a descobrir que também podem aprender tecnologia, criar projetos e desenvolver novas habilidades.
Todo o conteĆŗdo Ć© disponibilizado gratuitamente, de forma clara, prĆ”tica e 
sem enrolação. 

VocĆŖ pode apoiar o projeto se quiser 
com um cafĆ©. 



Post a Comment

Postagem Anterior Próxima Postagem