Files
Iris/src/scss/components/_images.scss

153 lines
2.5 KiB
SCSS
Executable File

.thumbnail {
position: relative;
z-index: 1;
perspective: 100px;
width: 100%;
max-width: 300px;
&__placeholder.icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-0.5em, -0.5em);
opacity: 0.05;
font-size: 4rem;
line-height: 1em;
width: 1em;
z-index: 1;
}
.loader {
position: absolute;
top: calc(50% - 60px);
left: calc(50% - 60px);
z-index: 9;
}
&--loading {
.thumbnail__image:before {
content: '';
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 8;
background-color: rgba(0, 0, 0, 0.75);
@include theme('light') {
background-color: rgba(255, 255, 255, 0.75);
}
}
}
&__image {
@include animate(0.1s);
position: relative;
overflow: hidden;
z-index: 2;
width: 100%;
padding-bottom: 100%;
background-repeat: no-repeat;
background-color: rgba(128, 128, 128, 0.15);
background-position: 50% 50%;
background-size: cover;
border-radius: 3px;
&--use-image-tag {
padding-bottom: 0;
}
&--glow {
@include responsive($bp_medium) {
display: none;
}
@include responsive(null, $bp_medium) {
@include blur(10px);
position: absolute;
z-index: 1;
top: 30%;
right: 30px;
left: 30px;
padding-bottom: 70%;
width: auto;
height: auto;
opacity: 0.3;
transform: translateZ(0px) rotateX(4deg);
mix-blend-mode: multiply;
}
}
}
&__actions {
@include animate();
position: absolute;
display: flex;
opacity: 0;
top: 0;
left: 0;
bottom: 0;
right: 0;
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
transform: translateY(-3px);
&__item {
@include animate();
display: inline-flex;
z-index: 3;
width: 4.2rem;
height: 4.2rem;
align-items: center;
justify-content: center;
border-radius: 100%;
background: rgba(0,0,0,0.4);
font-size: 2rem;
cursor: pointer;
color: colour('white');
border: 0 !important;
margin: 0 5px;
&:hover {
background: colour('black');
}
}
}
&--small {
max-width: 50px;
.thumbnail__placeholder.icon {
font-size: 2rem;
}
}
&--fill {
max-width: none;
}
&--circle {
.thumbnail {
&__image {
border-radius: 50%;
}
}
}
&:hover {
.thumbnail__actions {
opacity: 1;
transform: translateY(0px);
}
}
}
.playback-controls {
z-index: 3;
}