triangle bouton method translate
HTML
<div class="outer-mylink">
<a class='mylink'><i>-</i></a>
</div>
CSS
body{
margin: 100px 0 0 ;
}
a, .mylink i {
cursor: pointer;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
transition: all .3s ease;
}
.outer-mylink {
width:100%;
height: 71px;
background: gray;
overflow: hidden;
position: relative;
text-align: center;
}
.mylink, .mylink i {
display: block;
}
.mylink {
width: 100px;
height: 100px;
-moz-transform: rotate(45deg) translate(-35px, -35px);
-o-transform: rotate(45deg) translate(-35px, -35px);
-webkit-transform: rotate(45deg) translate(-35px, -35px);
transform: rotate(45deg) translate(-35px, -35px);
margin: 0 auto;
background: red;
position:relative;
}
/* si icone fixe */
/*
.mylink i {
width: 32px;
height: 32px;
font-size: 32px;
font-style: normal;
line-height: 32px;
color: white;
transform: rotate(-45deg) translate(0px, 80px);
-ms-transform: rotate(-45deg) translate(0px, 80px);
-webkit-transform: rotate(-45deg) translate(0px, 80px);
-o-transform: rotate(-45deg) translate(0px, 80px);
background: gray;
}
*/
/* si effet hover sur icone */
.mylink i {
width: 32px;
height: 32px;
font-size: 32px;
font-style: normal;
line-height: 32px;
color: white;
position:absolute;
top: 55px;
left: 55px;
transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
background: gray;
}
.mylink:hover {
background: blue;
}
.mylink:hover i {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg);
}