portfolio/assets/styles/components/technologies.scss

101 lines
1.9 KiB
SCSS

@use "sass:math";
.tech-mosaic {
display: flex;
flex-wrap: wrap;
.item {
position: relative;
box-sizing: border-box;
background-color: rgba(231, 231, 231, 0.425);
flex-basis: percentage(math.div(1, 8));
}
.item::before {
content: '';
display: block;
padding-top: 100%;
}
.item .item-inside {
position: absolute;
top: 0; left: 0;
height: 100%;
width: 100%;
}
.item-bg {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
img {
width: 100%;
}
padding: 2em;
}
.item-bg img.img-stretch {
width: auto;
height: 100%;
}
.item-content {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
color: white;
display: flex;
justify-content: center;
align-items: center;
opacity: 1;
background-color: rgba(95, 196, 99, 0.46);
transition: all 0.2s;
}
.item-content > div {
opacity: 0;
font-size: 1.1em;
text-align: center;
padding: .5em;
line-height: 1.5em;
max-width: 100%;
}
.item:hover .item-content {
background-color: rgba(0, 0, 0, 0);
}
}
@media (min-width: 400px) {
.item-bg {
padding: 1em !important;
}
}
@media (max-width: 1000px) {
.tech-mosaic {
.item {
flex-basis: percentage(math.div(1, 5));
}
}
}
@media (max-width: 800px) {
.tech-mosaic {
.item {
flex-basis: percentage(math.div(1, 4));
}
}
}
@media (max-width: 400px) {
.tech-mosaic {
.item {
flex-basis: percentage(math.div(1, 2));
}
}
}