vpn.email
Version:
vpn.email client
198 lines (172 loc) • 3.16 kB
text/less
@import (once) "vars";
@import (once) "utils";
@import (once) "transform";
@import (once) "animations";
.image-container {
display: inline-block;
position: relative;
vertical-align: middle;
max-width: 100%;
background-color: @transparent;
//.block-shadow;
.frame {
background-color: @white;
position: relative;
width: 100%;
height: 100%;
}
img {
display: block;
width: 100%;
height: 100%;
}
.image-overlay {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
opacity: 0;
overflow: hidden;
font-size: .875rem;
line-height: 1rem;
padding: 1em 1.5em;
.op-default;
color: @white;
text-align: center;
border-radius: inherit;
.transition(.65s);
&:hover {
opacity: 1;
&:before, &:after {
opacity: 1;
.scale(1);
}
}
&:before, &:after {
display: block;
position: absolute;
content: "";
border: 1px solid rgba(255, 255, 255, 0.7);
top: 1em;
bottom: 1em;
left: 1em;
right: 1em;
opacity: 0;
border-radius: inherit;
.scale(1.5);
.transition(.65s);
}
&:after {
border-left: none;
border-right: none;
bottom: 1em;
top: 1em;
}
&:before {
border-top: none;
border-bottom: none;
bottom: 1em;
top: 1em;
}
}
&.diamond {
overflow: hidden;
.frame {
.rotate(45deg);
overflow: hidden;
img, .image-replacer {
.rotate(-45deg);
}
}
}
&.rounded {
img {
border-radius: @borderRadius;
}
}
&.bordered {
.frame {
border: 1px @grayLighter solid;
padding: .5rem;
}
}
&.polaroid {
.frame {
border: 1px @grayLighter solid;
padding: .5rem .5rem 2rem;
}
}
&.handing {
margin-top: 20px;
.frame {
border: 1px @grayLighter solid;
position: relative;
padding: .5rem;
&:after {
content: "";
position: absolute;
width: .625rem;
height: .625rem;
background-color: @steel;
border-radius: 50%;
top: -20%;
left: 50%;
margin-left: -.3125rem;
z-index: 3;
.shadow;
}
}
&.image-format-hd {
.frame:after {
top: -25%;
}
}
&.image-format-square {
.frame:after {
top: -15%;
}
}
&:after {
position: absolute;
content: "";
background-color: transparent;
border-top: 1px solid @grayLighter;
.rotate(-16deg);
z-index: 2;
top: 0;
left: 0;
width: 50%;
height: 50%;
.transformOrigin(top left);
}
&:before {
position: absolute;
content: "";
background-color: transparent;
border-top: 1px solid @grayLighter;
.rotate(16deg);
z-index: 2;
top: 0;
right: 0;
width: 50%;
height: 50%;
.transformOrigin(top right);
}
&.ani {
.transformOrigin(50% -25px);
.animate(swinging 10s ease-in-out 0s infinite);
// -webkit-animation: swinging 10s ease-in-out 0s infinite;
// -o-animation: swinging 10s ease-in-out 0s infinite;
// -moz-animation: swinging 10s ease-in-out 0s infinite;
// -ms-animation: swinging 10s ease-in-out 0s infinite;
// animation: swinging 10s ease-in-out 0s infinite;
}
&.ani-hover {
&:hover {
.transformOrigin(50% -25px);
.animate(swinging 5s ease-in-out 0s);
}
}
}
}