Como criar uma estrela com CSS passo a passo
Neste post você vai aprender a criar um elemento HTML com formato de estrela com CSS puro, sem depender de imagens ou outras libs de terceiros.
Teoria da estrela com CSS
Primeiro cabe uma explicação rápida teórica sobre como executar a técnica
Porque melhor que um ctrl + c e ctrl + v é entender o conceito, pelo menos esta é a minha opinião 😀
Vamos primeiramente criar um elemento que vai ter um shape de duas pernas da estrela, ou pontas como você preferir
Depois criaremos a ponta superior com o pseudo elemento :before
Então criaremos com o :after uma estrutura semelhante ao elemento principal de HTML da estrela, só que ao contrario
Quer se especializar em HTML e CSS? Veja o nosso catálogo de cursos.
E assim concluímos a nossa estrela em CSS!
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 114 aulas
- 4 projetos
- 9h 15min
Estrela com CSS na prática
Então vamos começar criando nossa estrutura base de HTML e também o primeiro passo do CSS, descrito acima
<!-- HTML -->
<div id="star"></div>
/* CSS */
#star {
margin: 100px;
position: relative;
display: block;
width: 0px;
height: 0px;
border-right: 100px solid transparent;
border-bottom: 70px solid #000;
border-left: 100px solid transparent;
transform: rotate(35deg);
}
Então neste passo nós criamos um elemento com posição relativa e display block, e as técnicas das bordas transparentes para criar as pontas da estrela
obs: a margin tem o efeito de descolar o elemento das bordas do navegador, não faz parte da estrela
Além disso rotacionamos o elemento com rotate para que fique na posição correta, temos então este resultado:
Agora devemos adicionar o CSS para fazer a ponta superior da estrela, que é o seguinte código:
/* segunda parte do código do CSS */
#star:before {
border-bottom: 80px solid #000;
border-left: 30px solid transparent;
border-right: 30px solid transparent;
position: absolute;
height: 0;
width: 0;
top: -45px;
left: -65px;
display: block;
content: '';
transform: rotate(-35deg);
}
Adicionamos então o pseudo elemento :before, assim a ponta superior foi criada
Perceba que novamente utilizamos a técnica da borda transparente para criar triângulos
E o rotate serve para zerar o ângulo criado pelo elemento principal, se não este triângulo ficaria torto
Veja o resultado:
Nossa estrela está quase finalizada, precisamos criar a primeira parte da estrutura, só que espelhada
Faremos isso com o pseudo elemento :after, veja:
/* resto do código CSS */
#star:after {
position: absolute;
display: block;
top: 3px;
left: -105px;
width: 0px;
height: 0px;
border-right: 100px solid transparent;
border-bottom: 70px solid #000;
border-left: 100px solid transparent;
transform: rotate(-70deg);
content: '';
}
Praticamente igual a primeira parte, só que agora com outro rotate para podermos girar ao contrário o pseudo elemento
Além disso alguns px em top e left, para o posicionamento correto dele no formato da estrela
E então temos ela finalizada, veja:
Código completo da estrela com CSS
Para os ansiosos, segue o código final:
<!-- HTML -->
<div id="star"></div>
/* CSS */
#star {
margin: 100px;
position: relative;
display: block;
width: 0px;
height: 0px;
border-right: 100px solid transparent;
border-bottom: 70px solid #000;
border-left: 100px solid transparent;
transform: rotate(35deg);
}
#star:before {
border-bottom: 80px solid #000;
border-left: 30px solid transparent;
border-right: 30px solid transparent;
position: absolute;
height: 0;
width: 0;
top: -45px;
left: -65px;
display: block;
content: '';
transform: rotate(-35deg);
}
#star:after {
position: absolute;
display: block;
top: 3px;
left: -105px;
width: 0px;
height: 0px;
border-right: 100px solid transparent;
border-bottom: 70px solid #000;
border-left: 100px solid transparent;
transform: rotate(-70deg);
content: '';
}
Conclusão
Algumas linhas de código são necessárias para criar uma estrela com CSS, mas com certeza é uma prática melhor que colocar uma imagem, por exemplo
Além disso vai exercitar alguns conceitos importantes como: :after, :before e transform
E por hoje é isso, até o próximo post!
Confira também nosso curso de HTML e CSS gratuito no YouTube clicando aqui! Onde criamos um site do 0 até o resposivo
Referência: CSS Tricks
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares
As diferenças de var, let e const
Desenvolvedor: o que faz, salário, como ser, como aprender e cursos
O que é um desenvolvedor? O desenvolvedor é um profissional essencial no mundo digital. Sua principal função é projetar, codificar, testar e manter software, transformando […]
O que é programação? Para que serve, áreas, cursos e como aprender
Você já parou para pensar o que é programação? De modo geral, as pessoas têm uma ideia do que se trata, mas será que você […]





a estrela ficou a esquerda na pagina, como centralizar?