Não é só os mágicos que fazem as coisas levitarem, a gente também pode fazer isso com CSS...
Encontrei uma série de efeitos hover (aqueles que aparecem quando o mouse está sobre um elemento, tipo um menu, um link, botão, imagem...) criados por Ian Lunn. E dentre eles, o que mais curti foi o que faz com que o item flutue ao passar o mouse, com direito a sombra por baixo para ficar mais realista. Por exemplo, pause o cursor sobre meu chibi (by Chanrio) abaixo:
Visualize a página de exemplo com todos os efeitos hover que se pode fazer usando Css. Na imagem acima, usei 2 deles, o efeito de transição 2D chamado Bob, que faz "levitar", e o "float shadow" que faz aparecer a sombra.
Para aplicar esse efeito a alguma coisa, você pode ver o código css nesse link ou fazer download dos códigos no github do autor (aqui ou link direto) e abrir o arquivo com nome hover.css (dentro da pasta css).
Aí você adiciona os trechos do código referente ao que deseja aplicar, no caso o Bob e Float Shadow, antes de /b:skin no html do seu template ou entre <style> e </style>:
Para aplicar esse efeito a alguma coisa, você pode ver o código css nesse link ou fazer download dos códigos no github do autor (aqui ou link direto) e abrir o arquivo com nome hover.css (dentro da pasta css).
Aí você adiciona os trechos do código referente ao que deseja aplicar, no caso o Bob e Float Shadow, antes de /b:skin no html do seu template ou entre <style> e </style>:
/* Bob */ @-webkit-keyframes hvr-bob { 0% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } 50% { -webkit-transform: translateY(-4px); transform: translateY(-4px); } 100% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } } @keyframes hvr-bob { 0% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } 50% { -webkit-transform: translateY(-4px); transform: translateY(-4px); } 100% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } } @-webkit-keyframes hvr-bob-float { 100% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } } @keyframes hvr-bob-float { 100% { -webkit-transform: translateY(-8px); transform: translateY(-8px); } } .hvr-bob { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); } .hvr-bob:hover, .hvr-bob:focus, .hvr-bob:active { -webkit-animation-name: hvr-bob-float, hvr-bob; animation-name: hvr-bob-float, hvr-bob; -webkit-animation-duration: .3s, 1.5s; animation-duration: .3s, 1.5s; -webkit-animation-delay: 0s, .3s; animation-delay: 0s, .3s; -webkit-animation-timing-function: ease-out, ease-in-out; animation-timing-function: ease-out, ease-in-out; -webkit-animation-iteration-count: 1, infinite; animation-iteration-count: 1, infinite; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-direction: normal, alternate; animation-direction: normal, alternate; } /* Float Shadow */ .hvr-float-shadow { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform; transition-property: transform; } .hvr-float-shadow:before { pointer-events: none; position: absolute; z-index: -1; content: ''; top: 100%; left: 5%; height: 10px; width: 90%; opacity: 0; background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%); background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%); /* W3C */ -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: transform, opacity; transition-property: transform, opacity; } .hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active { -webkit-transform: translateY(-5px); transform: translateY(-5px); /* move the element up by 5px */ } .hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before { opacity: 1; -webkit-transform: translateY(5px); transform: translateY(5px); /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */ }
Agora, se quiser usar em um botão, menu, ou outra coisa nesse estilo com link, faça assim:
Kawaii
<center><a href="#" class="hvr-bob hvr-float-shadow hvr-trim">Link</a></center>
Se for com imagem:
<center><div class="hvr-bob hvr-float-shadow"> <img src='LINK-DA-IMAGEM'/></div></center>
O mesmo vale para os demais efeitos. Copie o código referente ao que quiser usar ou cole tudo o que houver no hover.css antes de /b:skin e depois, onde quiser que apareça, basta acrescentar em class="hvr-nomedoefeito".
Imagem de abertura do post: Freepik.com
0 Comentários
Muito obrigada por seu comentário e por sua presença! Ambos são super importantes para mim.
Apenas peço que:
- Comente a vontade, dê sua opinião, faça críticas, esclareça suas dúvidas e dê suas sugestões sobre o assunto referente às postagens;
- Use um vocabulário livre para todas as idades;
- Não ofenda ninguém em hipótese alguma.
Os comentários são moderados e não são permitidos comentários de pessoas que não se identifiquem. Algumas dúvidas podem ser previamente esclarecidas na F.A.Q, assim como créditos e outras coisas.
Por favor, entrem em contato por meio das redes sociais também para dúvidas, sugestões, pedidos ou outros:
Facebook - Twitter - Deviantart