Neste artigo iremos conciliar a técnica de hexágono com CSS e inserir uma foto com borda hexagonal com CSS no HTML.
Primeiramente para utilizar a imagem em um hexágono, devemos aprender a criar a figura geométrica
Porém antes de iniciar a criação do mesmo, quero dizer que neste post, crio em detalhes o hexágono
O post foi feito certo tempo atrás mas a ideia ainda é a mesma, então se você quiser aprender o que acontece por baixo dos panos no HTML/CSS acesse o post…
E neste da imagem no hexágono, vou apenas mostrar a técnica que utilizo nos meus projetos, então vamos lá! 😀
Criando o hexágono com CSS
Vou primeiramente mostrar o código e o resultado final dele:
<!-- HTML --> <div id="hexagono"></div>
/* CSS */ body { margin: 100px; } #hexagono { width: 100px; height: 105px; background-color: red; position: relative; } #hexagono:before { content: ""; position: absolute; top: 0px; left: 0px; width: 0; height: 0; border-left: 50px solid white; border-right: 50px solid white; border-bottom: 25px solid transparent; } #hexagono:after { content: ""; position: absolute; bottom: 0px; left: 0; width: 0; height: 0; border-left: 50px solid white; border-right: 50px solid white; border-top: 25px solid transparent; }
E teremos isso na página, com este código adicionado:
Bom, com este código você consegue fazer a figura geométrica, e também alterar a dimensão dela caso seja necessário
Basta alterar a width e height da div principal, e também as bordas, top e bottom do :after e :before, tudo proporcionalmente
Vale lembrar também que o estilo no body não é necessário, usei apenas para descolar das bordas do navegador o hexágono
Então agora o que falta, é inserir a imagem desejada no hexágono
Inserindo a imagem no hexágono
Para finalizar nossa tarefa, serão necessárias algumas alterações
Vamos remover o background-color e adicionar algumas novas regras para a propriedade background
Assim vamos inserir a imagem e centralizar a mesma, veja:
#hexagono { width: 100px; height: 105px; background: transparent url('matheus.jpeg') no-repeat; background-size: cover; background-position: center center; position: relative; } /* resto nao muda */
Detalhe que a única porção de código alterada, foi a div principal do hexágino, onde fiz as mudanças supracitadas
Inserimos a imagem, garantimos que não vai repetir e centralizamos
Quer se especializar em Desenvolvimento Web? Veja o nosso catálogo de cursos.
O resultado final foi este:
E assim temos a foto com borda hexagonal com CSS!
Detalhe que você precisa adicionar uma imagem existente no seu PC, meio óbvio mas é bom fazer a colocação! 😀
Código completo
Segue o código completo para os preguiçosos! 😀 (me incluo haha)
<!-- HTML --> <div id="hexagono"></div> /* CSS */ body { margin: 100px; } #hexagono { width: 100px; height: 105px; background: transparent url('matheus.jpeg') no-repeat; background-size: cover; background-position: center center; position: relative; } #hexagono:before { content: ""; position: absolute; top: 0px; left: 0px; width: 0; height: 0; border-left: 50px solid white; border-right: 50px solid white; border-bottom: 25px solid transparent; } #hexagono:after { content: ""; position: absolute; bottom: 0px; left: 0; width: 0; height: 0; border-left: 50px solid white; border-right: 50px solid white; border-top: 25px solid transparent; }
Conclusão
Na primeira parte foi mostrada a estratégia para criar um hexágono com CSS, depois inserimos a imagem de fundo na figura
A parte mais difícil, com certeza, é fazer o hexágono, depois disso apenas precisamos do background-image com a imagem e pronto! 🙂
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