
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 Comments
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