CSS: A Linguagem Essencial para Estilização Web
Guia de Posicionamento CSS: static, relative, absolute
Neste tutorial, vamos explorar o universo do posicionamento em CSS
O que é CSS?Descubra como o CSS transforma a aparência das páginas web, separando conteúdo de design para melhor organização e flexibilidade.. Entender como cada valor de position funciona é essencial para criar layouts precisos, interativos e responsivos. Vamos seguir em formato narrativo, abordando cada conceito de forma gradual e com exemplos práticos
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. para que você entenda onde e como cada tipo de posicionamento pode ser aplicado.
Conceito de Position🔗
A propriedade
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. position define o contexto de posicionamento de um elemento HTML
Estrutura Básica de um Documento HTMLAprenda a criar a base perfeita para suas páginas com nosso tutorial de HTML. Descubra como organizar sua estrutura web de forma prática e sem complicações.. Em outras palavras, ela controla como o navegador distribui esses elementos na página, considerando sua relação com demais componentes e com a própria tela. Os valores disponíveis são:
staticrelativeabsolutefixedsticky
Cada um desses valores ajusta o comportamento do elemento e influencia as propriedades
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. de deslocamento como top, right, bottom e left.
Position: static🔗
A maioria dos elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. tem posição estática por padrão, isto é, position: static;. Quando um elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. está estático:
- Ele não reage a valores de
top,right,bottomouleft. - Ele segue o fluxo normal do documento, ocupando espaço de acordo com a ordem de criação no HTML
O que é HTML? Fundamentos, História e Evolução da LinguagemDescubra a origem e evolução do HTML, entendendo sua importância na estrutura da web e como influenciou o desenvolvimento digital moderno..
Em outras palavras, nenhum deslocamento especial ocorre. É como se o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. estivesse “colado” no layout de forma comum, sem interferir ou ser influenciado por posicionamentos específicos.
Exemplo (static)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8" /> <style>.caixa-estatica { width: 150px; height: 150px; background-color: lightblue; position: static; /* top, left, etc. serão ignorados */ }</style> </head> <body> <div class="caixa-estatica"></div> </body> </html>
Nesse exemplo, a div ocupa seu espaço naturalmente, sem responder a qualquer coordenada de posicionamento.
Divs e Spans: Uso e DiferençasAprenda a usar divs e spans para estruturar páginas HTML. Descubra técnicas essenciais e dicas de boas práticas para criar layouts organizados.
Position: relative🔗
Quando definimos position: relative;, o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. continua no fluxo normal do documento, assim como no caso estático. A diferença é que passamos a poder deslocar esse elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. em relação à sua posição original, usando top, right, bottom e left sem afetar o posicionamento dos outros elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. (o espaço que ele ocupava no fluxo permanece reservado).
Características:
1. Mantém o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. no fluxo comum, mas cria um contexto de posicionamento para pseudo-elementos
Seletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. e elementos com position: absolute descendentes
Combinadores: Descendente, Filho Direto, Irmão Adjacente e GeralAprenda a dominar os combinadores CSS e a selecionar elementos com precisão no seu HTML. Descubra como aplicar estilos eficientes e organizados em seu site..
2. Ao deslocar o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. usando top, left etc., o espaço original permanece em branco (ou seja, visualmente ele "sai" de seu lugar, mas os outros elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. continuam atuando como se ele estivesse lá).
Exemplo (relative)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8" /> <style>.caixa-relative { width: 150px; height: 150px; background-color: lightgreen; position: relative; top: 20px; left: 20px; }</style> </head> <body> <div class="caixa-relative"> Esta caixa foi deslocada 20px para baixo e 20px para a direita, mas seu espaço original continua reservado. </div> </body> </html>
Observe que o container mantém seu espaço no fluxo, mas é deslocado visualmente, sobrepondo-se ao que estiver atrás.
Position: absolute🔗
O posicionamento absoluto (position: absolute;) retira o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. do fluxo normal da página, permitindo que seja posicionado em relação ao primeiro ancestral posicionado (um elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. pai com relative, absolute ou fixed) ou, se nenhum ancestral estiver posicionado, em relação ao body.
Características:
1. Remove o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. do fluxo, de modo que os demais elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. se reorganizam como se ele não existisse.
2. Permite controlar a posição exata com top, right, bottom e left.
3. O referente de posicionamento (chamado containing block) é o primeiro ascendente que tenha uma posição diferente de static ou, caso contrário, a viewport
Responsividade com HTML: Viewport e `<picture>`Descubra como usar a meta viewport e o elemento picture para imagens responsivas, garantindo desempenho, usabilidade e SEO de qualidade. (na maioria dos browsers, é como se fosse o body).
Exemplo (absolute)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8" /> <style>.container { position: relative; width: 300px; height: 300px; background-color: lightblue; margin: 20px; } .caixa-absolute { position: absolute; width: 100px; height: 100px; background-color: coral; top: 50px; left: 30px; }</style> </head> <body> <div class="container"> <div class="caixa-absolute">Absoluta dentro de um container relative.</div> </div> </body> </html>
Nesse exemplo, a caixa laranja (.caixa-absolute) é posicionada em relação ao .container, que tem position: relative;. Assim, top: 50px; e left: 30px; referenciam a borda superior e a borda
Seletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. esquerda do container e não do documento inteiro.
Position: fixed🔗
Com o valor fixed, o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. também é removido do fluxo, porém passa a ser posicionado em relação à viewport
Responsividade com HTML: Viewport e `<picture>`Descubra como usar a meta viewport e o elemento picture para imagens responsivas, garantindo desempenho, usabilidade e SEO de qualidade., ou seja, à janela de visualização do navegador. Isso faz com que o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. permaneça no mesmo lugar da tela mesmo que o usuário role a página.
Características:
1. O elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. não se desloca quando a página é rolada.
2. top, right, bottom e left são calculados em relação à janela (viewport
Responsividade com HTML: Viewport e `<picture>`Descubra como usar a meta viewport e o elemento picture para imagens responsivas, garantindo desempenho, usabilidade e SEO de qualidade.).
3. É útil para criar cabeçalhos
Formatação de Texto: `<p>`, `<h1>-<h6>`, `<strong>`, `<em>`Aprenda a formatar textos em HTML com tags de parágrafo, títulos e destaques, organizando seu conteúdo e garantindo semântica. e barras laterais “fixas” em layouts.
Exemplo (fixed)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8" /> <style>.cabecalho-fixo { position: fixed; top: 0; left: 0; width: 100%; height: 60px; background-color: navy; color: white; display: flex; align-items: center; justify-content: center; } body { margin: 0; height: 2000px; /* Para ter rolagem */ }</style> </head> <body> <div class="cabecalho-fixo">Este cabeçalho está fixo no topo!</div> <p>Role para ver o efeito do elemento fixo...</p> </body> </html>
Repare que o cabeçalho
Formatação de Texto: `<p>`, `<h1>-<h6>`, `<strong>`, `<em>`Aprenda a formatar textos em HTML com tags de parágrafo, títulos e destaques, organizando seu conteúdo e garantindo semântica. permanece sempre à vista, independentemente da rolagem.
Position: sticky🔗
O position: sticky combina o comportamento de elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. relativos e fixos. Ele flui normalmente até alcançar um limite de rolagem
Overflow e Controle de ConteúdoAprenda a controlar a propriedade overflow em CSS, dominando rolagem, ocultação de conteúdo e textos longos para layouts responsivos e acessíveis. definido (por exemplo, top: 0;). Ao atingir esse limite, o elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. se “fixa” naquele ponto enquanto a rolagem continuar.
Características:
1. Funciona apenas dentro de um container que tenha espaço suficiente para que o sticky seja ativado.
2. O elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. se comporta como position: relative até que o limite (top, left, etc.) seja cruzado durante a rolagem
Overflow e Controle de ConteúdoAprenda a controlar a propriedade overflow em CSS, dominando rolagem, ocultação de conteúdo e textos longos para layouts responsivos e acessíveis..
3. Ao atingir esse limite, ele se prende (fica “fixo”) até que o fluxo do container termine ou até que o usuário role para trás.
Exemplo (sticky)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8" /> <style>.container { height: 600px; overflow-y: scroll; border: 2px solid #333; margin: 20px; } .titulo-sticky { position: sticky; top: 0; background-color: gold; padding: 10px; padding-top: 30px; } .conteudo { height: 1000px; background: linear-gradient(lightgrey, white); }</style> </head> <body> <div class="container"> <h2 class="titulo-sticky">Eu fico grudado no topo deste container!</h2> <div class="conteudo"> Role dentro deste container para ver o efeito do sticky. </div> </div> </body> </html>
No exemplo, o .titulo-sticky se fixará no topo do .container enquanto houver espaço de rolagem
Overflow e Controle de ConteúdoAprenda a controlar a propriedade overflow em CSS, dominando rolagem, ocultação de conteúdo e textos longos para layouts responsivos e acessíveis. interno, mas não “escapará” para fora dele.
Comparação Geral🔗
Podemos resumir as diferenças numa tabela
Criando Tabelas: `<table>`, `<tr>`, `<td>`, `<th>`Descubra como montar tabelas HTML com tags básicas. Este tutorial prático ensina o uso de <table> <tr> <td> e <th> para organizar dados de forma eficiente. para facilitar a visualização:
| Valor | Permanece no fluxo? | Posicionado em relação a? | Deslocamento (top, etc.)? | Fixa na tela ao rolar? |
|---|---|---|---|---|
| static | Sim | Fluxo normal do documento | Não | Não |
| relative | Sim (mas pode mover) | Própria posição original | Sim | Não |
| absolute | Não | Ancestral posicionado ou body/viewport | Sim | Não |
| fixed | Não | Viewport | Sim | Sim |
| sticky | Sim (até limite) | Container de rolagem (ancestral) | Sim | Parcial (enquanto estiver acima do limite definido) |
Conclusão🔗
Compreender posicionamento em CSS
O que é CSS?Descubra como o CSS transforma a aparência das páginas web, separando conteúdo de design para melhor organização e flexibilidade. é fundamental para ter controle granular sobre o layout. Saber escolher entre static, relative, absolute, fixed e sticky lhe permite criar estruturas coerentes, facilitar interações e tornar a navegação mais intuitiva. A recomendação é praticar bastante para internalizar como cada tipo de posicionamento interage com os elementos
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. ao redor e com a viewport
Responsividade com HTML: Viewport e `<picture>`Descubra como usar a meta viewport e o elemento picture para imagens responsivas, garantindo desempenho, usabilidade e SEO de qualidade..
Dica: Sempre que possível, planeje antecipadamente o uso de contêineres posicionados (por exemplo, usando position: relative;) para que elementos absolute fiquem no lugar desejado, sem depender involuntariamente de todo o documento. Além disso, o sticky pode ser muito útil para seções que precisam ficar visíveis por um tempo, mas sem se manter fixas na tela o tempo todo.
Esperamos que este tutorial esclareça suas dúvidas sobre o assunto e sirva de guia inicial para você dominar de vez o fluxo de posicionamento em CSS
O que é CSS?Descubra como o CSS transforma a aparência das páginas web, separando conteúdo de design para melhor organização e flexibilidade.!
Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.
Referências🔗
- DevDocs - Uma documentação rápida e pesquisável para propriedades CSS: devdocs.io/css/
- FreeCodeCamp - Oferece um curso interativo sobre CSS básico, incluindo posicionamento: www.freecodecamp.org/learn/responsive-web-design/#basic-css
- MDN Web Docs - Uma fonte abrangente para documentação de CSS, incluindo propriedades como position: developer.mozilla.org/pt-BR/docs/Web/CSS
- W3Schools - Oferece tutoriais fáceis de seguir sobre CSS, incluindo posicionamento: www.w3schools.com/css/
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 11 meses atrás
há 13 meses atrás