Botão html css efeito hover
Botão html css efeito hover
Neste tutorial veja como criar um Botão css efeito hover.

Nesta seção, projetaremos as estruturas com as tags abaixo.
Usaremos A Tag <a>, <span>, <i> e a tag <p>.
Essas tags usaremos para criar o nosso Botão html css efeito hover
.
Vamos Adicionar o HTML
<a class="btn mais-btn" href="#"> <span class="fl"></span> <span class="sfl"></span> <span class="sinal"></span> <i></i> <p>Veja mais</p> </a>
Vamos Adicionar o CSS
Nesta seção, usaremos algumas propriedades CSS para estilizar a nosso Botão html e css
.
.btn { width: 150px; border-radius: 3px; cursor: pointer; position: absolute; font-family: "Roboto"; text-transform: uppercase; color: #4c4c4c; letter-spacing: 0.5px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; outline: none; text-decoration: none; text-align: center; } .mais-btn { border-right: 2px solid #4c4c4c; border-bottom: 2px solid #4c4c4c; padding: 17px 29px 15px 31px; border-color: #4c4c4c; } .mais-btn p { font-size: 14px; } .mais-btn:before { left: 0; bottom: 0; height: -webkit-calc(100% - 17px); height: calc(100% - 17px); width: 2px; } .mais-btn:after, .mais-btn:before { content: " "; display: block; background: #4c4c4c; position: absolute; -webkit-transition: .5s; transition: .5s; z-index: 10; } .mais-btn:after { top: 0; right: 0; width: -webkit-calc(100% - 17px); width: calc(100% - 17px); height: 2px; } .mais-btn:after, .mais-btn:before { content: " "; display: block; background: #4c4c4c; position: absolute; -webkit-transition: .5s; transition: .5s; z-index: 10; } .mais-btn:before { left: 0; bottom: 0; height: -webkit-calc(100% - 17px); height: calc(100% - 17px); width: 2px; } .mais-btn:after, .mais-btn:before { content: " "; display: block; background: #4c4c4c; position: absolute; -webkit-transition: .5s; transition: .5s; z-index: 10; } .mais-btn .fl, .mais-btn .sfl { position: absolute; right: 0; height: 100%; width: 0; z-index: 2; background: #4c4c4c; top: 0; -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: .1s; transition-delay: .1s; } .mais-btn .fl, .mais-btn .sfl { position: absolute; right: 0; height: 100%; width: 0; z-index: 2; background: #4c4c4c; top: 0; -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: .1s; transition-delay: .1s; } .mais-btn .sfl { z-index: 1; background: #4c4c4c; -webkit-transition: .7s; transition: .7s; } .mais-btn .sinal { position: absolute; z-index: 15; width: 18px; height: 18px; top: -webkit-calc(50% - 8px); top: calc(50% - 8px); left: -webkit-calc(50% - 8px); left: calc(50% - 8px); } .mais-btn .sinal:before { width: 100%; height: 2px; top: 8px; left: 0px; -webkit-transform: translateX(50px) scaleX(0); -ms-transform: translateX(50px) scaleX(0); transform: translateX(50px) scaleX(0); } .mais-btn .sinal:before, .mais-btn .sinal:after { content: ""; background: #fff; display: block; position: absolute; opacity: 0; -webkit-transition-duration: .3s; transition-duration: .3s; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); } .mais-btn .sinal:after { width: 2px; height: 100%; left: 8px; top: 0; -webkit-transform: translateY(20px) scaleY(0); -ms-transform: translateY(20px) scaleY(0); transform: translateY(20px) scaleY(0); -webkit-transition-duration: .4s; transition-duration: .4s; } .mais-btn .sinal:before, .mais-btn .sinal:after { content: " "; background: #fff; display: block; position: absolute; opacity: 0; -webkit-transition-duration: .3s; transition-duration: .3s; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); } .mais-btn i { position: absolute; display: block; top: 1px; left: 1px; -webkit-transition: .5s; transition: .5s; z-index: 10; } .mais-btn i:before { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); } .mais-btn i:after, .mais-btn i:before { content: ""; display: block; width: 2px; height: 20px; background: #4c4c4c; position: absolute; margin: -10px -1px; left: 50%; top: 50%; transition: 0.3s; } .mais-btn:hover i:after { content: " "; display: block; width: 2px; height: 20px; background: #4c4c4c; position: absolute; margin: 0px -1px; left: 50%; top: 50%; } .mais-btn:hover i:before { content: " "; display: block; width: 2px; height: 20px; background: #4c4c4c; position: absolute; margin: -10px 0px -10px 8px; left: 50%; top: 50%; } .mais-btn p { -webkit-transition: .5s; transition: .5s; position: relative; z-index: 1; } .mais-btn:hover:before, .mais-btn:before { height: 100%; } .mais-btn:before { left: 0; bottom: 0; height: -webkit-calc(100% - 17px); height: calc(100% - 17px); width: 2px; } .mais-btn:hover .fl, .mais-btn .fl { -webkit-transition: .7s; transition: .7s; } .mais-btn:hover .fl, .mais-btn:hover .sfl, .mais-btn .fl, .mais-btn .sfl { -webkit-transition-delay: 0s; transition-delay: 0s; width: 100%; } .mais-btn .fl, .mais-btn .sfl { position: absolute; right: 0; height: 100%; width: 0; z-index: 2; background: #4c4c4c; top: 0; -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: .1s; transition-delay: .1s; } .mais-btn:hover .sfl, .mais-btn. .sfl { -webkit-transition: .5s; transition: .5s; } .mais-btn:hover .fl, .mais-btn:hover .sfl, .mais-btn.hvd .fl, .mais-btn.hvd .sfl { -webkit-transition-delay: 0s; transition-delay: 0s; width: 100%; } .mais-btn .sfl { z-index: 1; background: #4c4c4c; -webkit-transition: .7s; transition: .7s; } .mais-btn .sinal { position: absolute; z-index: 15; width: 18px; height: 18px; top: -webkit-calc(50% - 8px); top: calc(50% - 8px); left: -webkit-calc(50% - 8px); left: calc(50% - 8px); } .mais-btn:hover .sinal:before, .mais-btn .sinal:before { -webkit-transition-duration: .5s; transition-duration: .5s; } .mais-btn:hover .sinal:after, .mais-btn:hover .sinal:before, .mais-btn .sinal:after, .mais-btn .sinal:before { -webkit-transform: none; -ms-transform: none; transform: none; opacity: 1; -webkit-transition-delay: .2s; transition-delay: .2s; } .mais-btn .sinal:after { width: 2px; height: 100%; left: 8px; top: 0; -webkit-transform: translateY(20px) scaleY(0); -ms-transform: translateY(20px) scaleY(0); transform: translateY(20px) scaleY(0); -webkit-transition-duration: .4s; transition-duration: .4s; } .mais-btn .sinal:before, .mais-btn .sinal:after { content: " "; background: #fff; display: block; position: absolute; opacity: 0; -webkit-transition-duration: .3s; transition-duration: .3s; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1); } .mais-btn:hover .sinal:after, .mais-btn:hover .sinal:before, .mais-btn.hvd .sinal:after, .mais-btn.hvd .sinal:before { -webkit-transform: none; -ms-transform: none; transform: none; opacity: 1; -webkit-transition-delay: .2s; transition-delay: .2s; } .mais-btn:hover .sinal:after, .mais-btn.hvd .sinal:after { -webkit-transition-duration: .6s; transition-duration: .6s; }
Combinando as Duas seções acima Html e Css temos o seguinte Resultado!
Veja o Resultado baixo!
Deixe um comentário