python-gallery/gallery/user/themes/default/style.scss

339 lines
6 KiB
SCSS
Raw Normal View History

@import 'variables/variables';
@import 'variables/fonts';
@import 'ui/reset';
@import 'ui/nav';
@import 'ui/main';
@import 'buttons/img-tool';
2023-01-01 14:31:28 +00:00
@import 'buttons/btn';
@import 'buttons/up';
2022-12-01 18:48:31 +00:00
.app {
2022-12-14 19:55:40 +00:00
margin: 0 0 0 3.5rem;
2022-12-19 15:07:41 +00:00
padding: 0.5rem;
2022-12-01 18:48:31 +00:00
width: auto;
2022-12-19 21:15:56 +00:00
min-height: 100vh;
2022-12-01 18:48:31 +00:00
position: relative;
display: flex;
flex-direction: column;
gap: 1rem;
//background-color: $black100;
2022-12-01 18:48:31 +00:00
color: $white100;
box-sizing: border-box;
z-index: 1;
overflow: unset;
> h1 {
margin: 0 auto;
padding: 0;
font-family: $font-header;
font-size: 5rem;
font-weight: 900;
line-height: 1;
text-align: center;
color: $green;
}
> p {
margin: 0 auto;
padding: 0;
font-family: $font-body;
font-size: 2rem;
font-weight: 600;
line-height: 1;
text-align: center;
color: $white100;
}
/*
2022-12-01 18:48:31 +00:00
h1 {
margin: 0;
padding: 0;
font-family: $font-header;
font-size: 2.5rem;
font-stretch: ultra-expanded;
font-weight: 600;
color: $green;
}
*/
2022-12-01 18:48:31 +00:00
}
2022-12-14 19:55:40 +00:00
@keyframes imgLoading {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
2022-12-14 19:55:40 +00:00
}
.err-warning {
min-height: 100vh;
gap: 0;
> h1 {
margin: 0 auto;
padding: 0;
font-family: $font-header;
font-size: 5rem;
font-weight: 900;
line-height: 1;
text-align: center;
color: $green;
}
> p {
margin: 0 auto;
padding: 0;
font-family: $font-body;
font-size: 2rem;
font-weight: 600;
line-height: 1;
text-align: center;
color: $white100;
}
}
2022-12-01 18:48:31 +00:00
.gallery {
margin: 0;
padding: 0;
width: 100%;
display: grid;
grid-template-columns: auto auto auto auto auto auto;
gap: 0.5rem;
.gallery__item {
margin: 0;
padding: 0;
height: auto;
position: relative;
background: linear-gradient(-45deg, $black100, $black400 40%, $black100);
2022-12-14 19:55:40 +00:00
background-size: 400% 400%;
border-radius: $rad;
animation: imgLoading 10s ease infinite;
2022-12-01 18:48:31 +00:00
box-sizing: border-box;
overflow: hidden;
&:after {
content: "";
display: block;
padding-bottom: 100%;
}
.gallery__item-info {
margin: 0;
padding: 0;
2022-12-01 18:48:31 +00:00
width: 100%;
height: 100%;
position: absolute;
left: 0;
bottom: 0;
display: flex;
flex-direction: column;
justify-content: flex-end;
background-image: linear-gradient(to bottom, #00000000, rgba($black100, 0.8));
z-index: +1;
opacity: 0; // hide
transform: scale(1.05); // scale up
transition: all 0.5s cubic-bezier(.79, .14, .15, .86);
2022-12-01 18:48:31 +00:00
h2 {
margin: 0;
padding: 0 1rem 0.5rem;
2022-12-01 18:48:31 +00:00
font-family: $font-header;
font-size: 1rem;
font-stretch: ultra-expanded;
font-weight: 600;
2022-12-01 18:48:31 +00:00
color: $green;
text-overflow: ellipsis;
overflow: hidden;
opacity: 0; // hide
2022-12-14 19:55:40 +00:00
transition: all 0.2s ease-in-out;
2022-12-01 18:48:31 +00:00
}
p {
margin: 0;
padding: 0 1rem 0.5rem;
font-family: $font-body;
font-size: 0.8rem;
font-weight: 500;
color: $white100;
text-overflow: ellipsis;
overflow: hidden;
opacity: 0; // hide
2022-12-14 19:55:40 +00:00
transition: all 0.2s ease-in-out;
2022-12-01 18:48:31 +00:00
}
&:hover {
opacity: 1;
transform: scale(1);
h2,
p {
2022-12-01 18:48:31 +00:00
opacity: 1;
}
}
}
.gallery__item-image {
margin: 0;
padding: 0;
2022-12-01 18:48:31 +00:00
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
2022-12-01 18:48:31 +00:00
object-fit: cover;
object-position: center;
border-radius: $rad;
2022-12-01 18:48:31 +00:00
}
}
}
.image__container {
margin: 0;
2022-12-01 18:48:31 +00:00
padding: 0;
width: 100%;
2022-12-19 15:07:41 +00:00
height: auto;
2022-12-01 18:48:31 +00:00
position: sticky;
top: 0;
display: flex;
2022-12-19 15:07:41 +00:00
overflow: hidden;
2022-12-01 18:48:31 +00:00
border-radius: $rad;
2022-12-01 18:48:31 +00:00
box-sizing: border-box;
img {
margin: auto;
padding: 0;
max-width: 100%;
height: 100%;
2022-12-19 15:07:41 +00:00
max-height: 75vh;
2022-12-01 18:48:31 +00:00
background: linear-gradient(-45deg, $black100, $black400 40%, $black100);
background-size: 400% 400%;
border-radius: $rad;
animation: imgLoading 10s ease infinite;
2022-12-01 18:48:31 +00:00
object-fit: contain;
object-position: center;
}
}
2022-12-01 18:48:31 +00:00
.image__info {
margin: 0;
padding: 0.5rem;
2022-12-01 18:48:31 +00:00
width: 100%;
display: flex;
flex-direction: column;
gap: 0.5rem;
2022-12-01 18:48:31 +00:00
background-color: $black200;
border-radius: $rad;
border-left: $rad solid $green;
2022-12-01 18:48:31 +00:00
box-sizing: border-box;
h2 {
margin: 0;
padding: 0;
2022-12-01 18:48:31 +00:00
font-family: $font-header;
font-size: 1.25rem;
2022-12-01 18:48:31 +00:00
font-stretch: ultra-expanded;
font-weight: 600;
color: $green;
text-overflow: ellipsis;
overflow: hidden;
}
2022-12-01 18:48:31 +00:00
p {
margin: 0;
padding: 0;
2022-12-01 18:48:31 +00:00
font-family: $font-body;
font-size: 1rem;
2022-12-01 18:48:31 +00:00
font-weight: 500;
color: $white100;
text-overflow: ellipsis;
overflow: hidden;
}
}
.img-tools {
width: 100%;
height: 2rem;
display: flex;
justify-content: center;
align-items: center;
gap: 0.5rem;
> div {
margin: 0;
padding: 0;
display: flex;
gap: 0.5rem;
background-color: $black200;
border-radius: $rad;
}
}